実行可能なスクリプトがあり、hdsentinel
入力するとき
./hdsentinel
端末からハードドライブの状態に関する情報を取得できます。
私が入力したとき:
./hdsentinel >hd.log
ファイル内のすべての情報を取得しましたhd.log
。
サイトに/home/user/Desktop
サンプルファイルがあります。 hd.log上記のファイル名にファイル例の3行目(3行目は192.168.1.1)を入力したいのですが結果はhd192.168.1.1.log
。どうすればいいですか?
答え1
これを試してみてください。ここでは、sedを使用してファイル例のn行目(3行目)を印刷し、$(sed '3q;d' <example-file-path>)
出力ファイル名に式の結果を使用します。
./hdsentinel > "hd$(sed '3q;d' /home/user/Desktop/example).log"
説明する:
sed 'NUMq;d' file
ここで、NUMは印刷する行番号です。たとえば、sed '3q;d'ファイルはファイルの3行目を印刷します。
NUMq
行番号があるとすぐに終了しますNUM
。
d
印刷する代わりに行を削除します。
したがって、qを使用すると、終了時にスクリプトの残りの部分がスキップされ、NUM行を除くすべての行が削除されます。