私は次のものを持っています:
read -p 'Delete old symlinks? y/n: ' prompt
if [ $prompt == [yY] ]
then
current_dir=$(pwd)
script_dir=$(dirname $0)
if [ $script_dir = '.' ]
then
script_dir="$current_dir"
fi
for sym in {find $PATH -type l -xtype d -lname "~"}
do
rm $sym
echo "Removed: $sym"
done
fi
私が達成しようとしているのは次のとおりです。
- プロンプトがy(yes)に等しい場合Then :(ホームディレクトリ)ですべてのシンボリックリンクを検索し、
~
それらに対してforループを実行して、それらを削除し、削除したシンボリックリンクを出力します。
現在、削除部分は実行されていませんが、残りは正常に機能します。私は機能する部分を含めませんでした、それはただの束ですln -s
。
私はMacOSX Mountain Lion(10.8.2)にいて、Zshをシェルとして使用しています。これは.sh
ファイルに含まれています。
私が抱えている問題は、何も起こらないということです。
ln: /Users/eduan/.vim/vim: File exists
ln: /Users/eduan/.vimrc: File exists
ln: /Users/eduan/.gvimrc: File exists
Done...
等
あなたが提供できるどんな助けにも感謝します!
編集:
私は今、次のものを持っています:
read -p 'Delete old symlinks? y/n: ' prompt
if [ $prompt == [yY] ]
then
find ~ -type l | while read line
do
rm -v "$line"
done
fi