我想将文件从一个目录移动到另一个目录
find /data/1990 -name "*.dat" -exec mv {} /data1/1990/ \;
这很容易。 我有/数据/多年1990,1991,1992,1993,1994,1995
如何循环这些年?
答案 0 :(得分:0)
你可以这样做:
for i in `ls /data/`;
do
echo "element=$i"; #put your code for each element
done
答案 1 :(得分:0)
通过更改当前的工作目录,我可以让生活更轻松:
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath)
cell.alpha = 0
let book = books[indexPath.row]
cell.textLabel?.text = book.bookTitle
cell.detailTextLabel?.text = book.postURL
let url = URL(string: book.postPicture)
DispatchQueue.global().async {
let data = try? Data(contentsOf: url!)
DispatchQueue.main.async {
cell.alpha = 0
cell.backgroundView = UIImageView(image: UIImage(data: data!))
UIView.animate(withDuration: 0.5, animations: {
cell.alpha = 1
})
}
}
cell.contentView.backgroundColor = UIColor.clear
cell.textLabel?.backgroundColor = cell.contentView.backgroundColor;
cell.detailTextLabel?.backgroundColor = cell.contentView.backgroundColor;
func prepareForReuse(){
cell.alpha = 0
cell.backgroundView = UIImageView(image: UIImage(named: "book.jpg"))
}
return cell
}
答案 2 :(得分:0)
你没告诉我们你使用的是什么shell(它们与编程语言不同)。但是在bash或zsh中,要提供年份范围,您可以使用大括号,即:
for year in {1990..1995}; do
find /data/$year -name "*.dat" -exec mv {} /data1/$year \;
done
您还可以使用算术评估和更现代的(?)块语法:
for ((year=1990; year<1995; year++)) {
find /data/$year -name "*.dat" -exec mv {} /data1/$year \;
}