findコマンドの出力がファイルシステム上のファイルまたはディレクトリの場合、linuxのfindコマンドを絶対パスを出力する関数にエイリアスしたい?findコマンドの絶対パスがファイル/ディレクトリの場合
これまで私がこれまでに得たことはありますが、正しく機能しません。
find_with_abspath(){
for i in $(find "[email protected]")
do
if [ -e "$i" ];
then
readlink -m "$i"
else
echo -n "$i"
fi
done
}
私が間違っていることは何ですか?
これは、[ファイル] - と私で$(見つける」ための '以来、スペースを含むディレクトリ名(を除いて、私のシステム上で動作します$ @ ")'は空白、タブ、改行で分割されます。ファイル名はすべて合法ですが、タブと改行はまれです。あなたはそれについて "それが正しく動作しない"ことは何を発見していますか? – ruakh
私は 'readlink'があなたが期待していることを確信していません。少なくとも私が持っているMacOS XとLinuxシステムでは、指定されたファイル名がシンボリックリンクでないとエラーになります。あなたが望むのは、 'realpath()'関数またはシステムコールからの出力を提供する同様のプログラムです。 –