"|"を含むファイルの名前を変更するには?

私はFedora 24を使用しています。

私はこれを行うためにさまざまな方法を試しました。 Windows VMで試してみて、そのフォルダを共有フォルダにしました。

「名前変更」コマンドを試してみました。

「mv」コマンドを使ってみました。

「ファイル」から名前を変更してみました。

inodeを使用してファイル名を変数に設定し、名前を変更しようとしました。 (失われたソース)

26477098 'File | With Pipe.png'
xyz=`ls -i|grep 26477098|sed 's/26477098 //'`
mv "$xyz" File\ --\ With\ Pipe.png
mv: cannot stat 'File | With Pipe.png': No such file or directory

何らかの方法で試しても、「ファイルやディレクトリはありません」というエラーが発生し続けます。

また、Inode番号を使用して名前を変更しようとしました("mv"ファイルのinode番号名が壊れていますか?)

26477098 'File | With Pipe.png'
[user@computer Pictures]$ find . -inum 26477098 -exec mv {} File\ --\ With\ Pipe.png \;
mv: cannot move './File | With Pipe.png' to 'File -- With Pipe.png': No such file or directory
[user@computer Pictures]$ find . -inum 26477098 -print0 | xargs -0 mv -t a.png
mv: failed to access 'a.png': No such file or directory

ファイルを開こうとすると、「画像が見つかりません...」というメッセージが表示されます。

私はinodeにハードリンクしてから元のファイルを削除しようとすることができると思いましたが、それを行う方法を見つけることができませんでした。

どんなアイデアがありますか?

*****************************編集する******************* *******************

[risshuu@centurion Pictures]$ mv "File | With Pipe.png" "File -- With Pipe.png" 
mv: cannot stat 'File | With Pipe.png': No such file or directory
[risshuu@centurion Pictures]$ mv File\ \|\ With\ Pipe.png File\ --\ With\ Pipe.png
mv: cannot stat 'File | With Pipe.png': No such file or directory

このようなファイルはたくさんありますが、そのうち何も動作しません。

パイプを含む新しいファイルを作成し、パイプを含めないように名前を変更することは問題ではありませんでした。コンテンツを「キャプチャ」したりファイルを開くことができないため、何か違うことが起きているようです。何も削除することはできません!他のファイルチェックコマンド、使用可能なファイル、またはファイルシステムからこれらのファイルを削除する方法はありますか?

ベストアンサー1

バックスラッシュを使用してパイプを抜くことができるはずです。

mv te\|st test

またはあなたの場合にはスペースがあります

mv first\ \|\ last first_last 

それでも問題が解決しない場合は、二重引用符を使用してすべての特殊文字をエスケープできます。

mv "first | last" first_last

おすすめ記事