2019-05-09 18:39:21 +00:00
|
|
|
#!/usr/bin/swift
|
|
|
|
|
|
|
|
import Foundation
|
|
|
|
|
2019-10-23 05:21:21 +02:00
|
|
|
extension FileHandle : TextOutputStream {
|
|
|
|
public func write(_ string: String) {
|
2021-12-31 14:07:42 +03:00
|
|
|
if let data = string.data(using: .utf8) { self.write(data) }
|
2019-10-23 05:21:21 +02:00
|
|
|
}
|
2019-10-01 11:12:23 +00:00
|
|
|
}
|
|
|
|
|
2019-10-23 05:21:21 +02:00
|
|
|
var stderr = FileHandle.standardError
|
2019-05-09 18:39:21 +00:00
|
|
|
|
2021-12-31 14:07:42 +03:00
|
|
|
let manager = FileManager.default
|
2019-05-09 18:39:21 +00:00
|
|
|
|
2019-10-23 05:21:21 +02:00
|
|
|
var success = true
|
|
|
|
|
2021-12-31 14:07:42 +03:00
|
|
|
// The command line arguments given but without the script's name
|
|
|
|
let CMDLineArgs = Array(CommandLine.arguments.dropFirst())
|
|
|
|
|
|
|
|
for item in CMDLineArgs {
|
|
|
|
do {
|
|
|
|
let url = URL(fileURLWithPath: item)
|
|
|
|
var trashedPath: NSURL!
|
|
|
|
try manager.trashItem(at: url, resultingItemURL: &trashedPath)
|
|
|
|
print((trashedPath as URL).path, terminator: ":")
|
|
|
|
success = true
|
|
|
|
} catch {
|
|
|
|
print(item, terminator: ":", to: &stderr)
|
|
|
|
success = false
|
|
|
|
}
|
2019-05-09 18:39:21 +00:00
|
|
|
}
|
|
|
|
|
2019-10-23 05:21:21 +02:00
|
|
|
guard success else {
|
2021-12-31 14:07:42 +03:00
|
|
|
exit(1)
|
2019-10-23 05:21:21 +02:00
|
|
|
}
|