回答編集履歴
2
誤字訂正
answer
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
エラーの直接の原因は、2行目の全角空白でしょう。
|
2
2
|
|
3
|
-
また、`sort $TranArchivePath/*.csv`だとファイルの中身をソートするので、ファイル名
|
3
|
+
また、`sort $TranArchivePath/*.csv`だとファイルの中身をソートするので、ファイル名のソートにはなりません。`sort`コマンドを使わなくても`ls -r`でファイル名の逆順にリストされます。
|
4
4
|
|
5
5
|
方針としては、既にある回答のように、10個あるとか無いとか場合分けをしないのが良いです。
|
6
6
|
|
1
追記
answer
CHANGED
@@ -1,3 +1,12 @@
|
|
1
1
|
エラーの直接の原因は、2行目の全角空白でしょう。
|
2
2
|
|
3
|
+
また、`sort $TranArchivePath/*.csv`だとファイルの中身をソートするので、ファイル名をソートにはなりません。`sort`コマンドを使わなくても`ls -r`でファイル名の逆順にリストされます。
|
4
|
+
|
3
|
-
方針としては、既にある回答のように、10個あるとか無いとか場合分けをしないのが良いです。
|
5
|
+
方針としては、既にある回答のように、10個あるとか無いとか場合分けをしないのが良いです。
|
6
|
+
|
7
|
+
```sh
|
8
|
+
ls -r $TranArchivePath/*.csv | tail -n +11 | xargs -r rm
|
9
|
+
```
|
10
|
+
また、ファイルが10個以下の場合は`xargs`には何も渡らないので、その場合`rm`を実行しないよう`xargs -r`とします。
|
11
|
+
|
12
|
+
上記は、(スクリプトファイルに書くのでなく)コマンドラインから打つときは、`ls`は`alias`されていることが多いので、`ls`でなく`\ls`あるいは`/bin/ls`と入力します。
|