保護されたファイルを削除するときに「y」を複数回発行する必要がないようにする方法

保護されたファイルを削除するときに「y」を複数回発行する必要がないようにする方法

「rm:書き込み禁止の一般ファイル[x]を削除しますか?」への回答を探しています。

bashrcから文字を複数回エクスポートし、キャリッジリターンを複数回エクスポートしようとしています。私たちは何をすべきですか?

ベストアンサー1

更新された質問に基づいて修正:

ファイルを削除するかどうかを尋ねるメッセージを表示したくない場合は、-f(「force」)オプションを追加してください。

rm -f /path/to/file

これには副作用があることに注意してください。指定されたパスが存在しない場合、そのパスはいいえこれを報告すると正常に返されます。

$ rm -f /nonexistent/path
$ echo $?
0

元の答え:

簡単な解決策は次のとおりです。

yes "$string" | head -n $number | tr $'\n' $'\r'

yes改行で区切って、ユーザーが提供した文字列を無限に繰り返します。複数回使用したhead後に停止し$numbertr改行文字をキャリッジリターンに変換します。キャリッジリターンによって出力が表示されない場合がありますが、それを次のコマンド(bash)に渡すと説明されます。

printf %q "$(yes "$string" | head -n $number | tr $'\n' $'\r')"

ないユーザーはbash結果にパイプするodか、返された実際の文字を表示できますhexdumpxxd

おすすめ記事