[解決済み] .gitフォルダを削除しようとすると、'rm -r .git -force'が機能しない
2022-03-11 05:46:16
質問
rm -r .git
rm -r .git --force
以下のように表示され、「はい」を入力して次に進むと、終わりのない供給があるようです。
override r--r--r-- redacted/staff for .git/objects/95/90087aa4b351e278e6e53ff6240045ab2db6d1?
解決方法は?
解析と解説。
メッセージ
override r--r--r-- ...?
は、一部のバージョンの rm コマンドで、書き込み権限が削除されたファイルやファイルを削除しようとしたときに表示されます。
再現するには
▶ mkdir -p foo/{bar,baz} ; touch foo/bar/qux
▶ chmod -R -w foo
▶ find foo -ls
4305147410 0 dr-xr-xr-x 4 alexharvey wheel 128 24 Mar 18:19 foo
4305147412 0 dr-xr-xr-x 2 alexharvey wheel 64 24 Mar 18:19 foo/baz
4305147411 0 dr-xr-xr-x 3 alexharvey wheel 96 24 Mar 18:19 foo/bar
4305147413 0 -r--r--r-- 1 alexharvey wheel 0 24 Mar 18:19 foo/bar/qux
ここで、これらのファイルを削除しようとすると、本当にこのファイルモードを上書きするかどうか尋ねられます。
▶ rm -r foo
override r-xr-xr-x alexharvey/wheel for foo/baz?
また、Mac OS X やその他の BSD 変種を使用している場合、そのように見えるかもしれませんが、その場合は
--force
をコマンドラインの末尾に追加すると、削除する追加ファイルの名前として解釈されるため、正しくありません。
しかし、それを修正しても、-fはr--r--r--を上書きすることができない。そのかわり、こうなる。
▶ rm -rf foo
rm: foo/baz: Permission denied
rm: foo/bar/qux: Permission denied
rm: foo/bar: Permission denied
rm: foo: Directory not empty
修正箇所です。
この問題を解決するには、まず、フォルダ内の書き込み権限を元に戻します。
▶ chmod -R +w foo
そうすると、rm -r でうまくいくはずです。
▶ rm -r foo
▶ ls foo
ls: foo: No such file or directory
こちらもご覧ください。
関連
-
[解決済み】shでJenkinsのステージから他のステージに変数を渡す
-
[解決済み] 値がベースに対して大きすぎる(エラートークンは "08")[重複]
-
[解決済み] bash スクリプトを実行している docker エントリポイントに "permission denied" が表示される。
-
[解決済み] bashスクリプトでfindコマンドを使用する
-
[解決済み] Bash - "fi ;;" の使い方は?
-
[解決済み] Bashのforeachループ
-
[解決済み] 標準出力ではなく標準エラー出力にパイプを通すにはどうしたらいいですか?
-
[解決済み] bashで "cat << EOF "はどのように動作するのですか?
-
[解決済み] Bashでパス文字列からファイルのサフィックスとパス部分を削除するにはどうすればよいですか?
-
[解決済み] ディレクトリをTarするが,完全な絶対パスはアーカイブに保存しない
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】shでJenkinsのステージから他のステージに変数を渡す
-
[解決済み] MacOSのbashターミナルでexport PS1="\u[\033[m]@[\033[32m]\h:\[\033[33;1m]\w[\033[m]\$" は何を意味していますか?
-
[解決済み] etc/profileでVISIBLE=NOWを設定するのはなぜですか?
-
[解決済み] curl: 引数リストが長すぎる
-
[解決済み] パイプと二重パイプのどちらの OR 演算子を使うか?
-
[解決済み] bashスクリプトで変数の束縛を解除
-
[解決済み] nohupプロセスを終了させる方法を教えてください。
-
[解決済み] Bash - "fi ;;" の使い方は?
-
[解決済み] シェルスクリプトでの連想配列
-
[解決済み] bashの"-ne "はどういう意味ですか?