ディレクトリに音楽がある程度埋め込まれるようなスクリプトを作成したいのですが、ある程度のスペースが残っています。ディレクトリはさまざまなパーティション上にある可能性があり、ディレクトリに空きスペースやそのパーティションを尋ねる方法はわかりません。ディレクトリやパーティションのディレクトリの容量を調べるには
どのようにあなたがそれ答えて
私は、あなたが記入したい特定のパーティション上で、特定のディレクトリを持っている意味と仮定100 MBが残るまで。
dfコマンドは、特定のディレクトリのディスク/パーティションに残っているディスク容量を返します。
df musicfolder/
4番目の列では、4番目の列の値を獲得し、ヘッダを無視することはawkを使用することができ、自由空間に
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 151733412 24153792 119871924 17%/
を与えるだろう。したがって、あなたのスクリプトは次のようなものになります:
freespace=$(df /musicfolder | awk 'FNR>1{print $4}')
while [ $freespace -gt 10000000 ] ; do
(copy files from wherever)
freespace=$(df ~/musicfolder | awk 'FNR>1{print $4}')
done
mg。私は "du"、 "fdisk"、 "stat"などを調べましたが、 "df"が引数を取るかどうかは見ていませんでした。ありがとうございました。 – ulver
df
は、まさにそれをあなたに教えてくれるんでしょう
pseudocode
fill(directory)
until < 100 mb of free space in directory
copy music to directory
。フォルダが中に存在するボリューム上の空き領域を確認するには、実行します。
df -h /home/chris/directory
出力:
Filesystem Size Used Avail Use% Mounted on
server:/vol/home 2.0T 1.3T 759G 63% /home/chris
省略代わりに、人間が読めるK/M/Gの生のバイトを取得する-h
フラグ/ T。
EDIT私は退屈だという理由だけで、私は先に行って、あなたのためのスクリプトを書いた:
#!/bin/bash
fillDir='/mnt/fillMe'
musicFile='/home/chris/Yakety Sax.mp3'
while [ `df -P "$fillDir" | awk 'NR==2{print $4}'` -gt 100000000 ]
do
echo `df -Ph "$fillDir" | awk 'NR==2{print $4}'` space left.
cp "$musicFile" "$fillDir"
done
ありがとうございます。あなたの答えは素晴らしいです。私はたぶんこの部分のdf部分を使い、残りの部分はルビーに切り替えるつもりですが、これは素晴らしいことです。ありがとうございました。 – ulver
- 1. ASP.NETディレクトリのファイル数を調べる
- 2. ディレクトリの内容をPythonでディレクトリにコピー
- 3. プロセッサの負荷容量を調べる方法は?
- 4. ディレクトリの内容を別のディレクトリに移動する(iOS)
- 5. あるディレクトリの内容を別のディレクトリにコピー
- 6. SVNディレクトリの内容を親ディレクトリに移動
- 7. Haskellのディレクトリの内容
- 8. wix - ディレクトリ全体とその内容をすべてコピーする
- 9. 文書ディレクトリのフォルダ情報を調べる方法
- 10. ディレクトリの内容を別のディレクトリにプログラム的にコピーする方法
- 11. TraceDebuggingすべてのハードディスクの空き容量を増やす
- 12. JSPでディレクトリの内容をアップロードする
- 13. ディレクトリの内容を変更する
- 14. Linuxは、すべてのディレクトリ
- 15. データベースサーバ上のディレクトリの内容を表示
- 16. ディレクトリ内のすべてのディレクトリを見つける
- 17. Jenkinsの空き容量が「builds」ディレクトリを削除しています
- 18. 統計量図のアイデアを調べる
- 19. 2つのディレクトリの内容の違い
- 20. cygwin perlでディレクトリ(と内容)のサイズをすばやく取得する方法
- 21. FTPディレクトリの内容を共有ネットワークパスにコピーする方法は?
- 22. ディレクトリ内のすべてのスクリプトの種類を調べるにはどうすればいいですか?
- 23. MapReduceジョブ出力ディレクトリの最後の部品番号を調べる方法
- 24. phpの特定のディレクトリからファイルやディレクトリをキャッチする方法
- 25. svnディレクトリを除くすべてのディレクトリをエクスポートします
- 26. ディレクトリがUNIXに存在するかどうかを調べるループ
- 27. ワイルドカードは、私が他のディレクトリに存在するすべてのディレクトリのリストを取得する必要があり、私のMakefile内のすべてのディレクトリ
- 28. すべてのファイルをディレクトリにtar
- 29. UNIXで複数のファイルやディレクトリを削除するには
- 30. nose2のファイルやディレクトリを無視するには?
/path/2/music/classic/brucknerのような特定のフルパスは、1つのパーティションにしか存在できません。特定のディレクトリに置かれたファイルはすべて同じパーティションにあります。しかし、その下にサブディレクトリがある場合、それらは他のディスクにマウントされるかもしれませんが、特定のディレクトリが保持できるものには影響しません。これにより、「現在のディレクトリで使用可能なディスク容量は何ですか?」という問題が簡素化されます。 (複数のプロセスが同じパーティション領域にファイルを書き込んでいる場合を除きます)。がんばろう。 – shellter