私は2つの部分に問題があります。上場絶対パスワット/ 255文字以上
パート1(ターミナル) - 私は、WindowsベースのシステムへのアーカイブはそれほどMac環境で働いています私はアーカイブの前にそれらのファイルを変更することができるように私は255のパスの長さを検出する必要があります。 StackOverflowでファイル名の長さに関する多くの解決策を見てきましたが、絶対パスの長さが必要です。私はこのスクリプト時に起こった、それは近いです:
sudo find . -name \* -type f | perl -ne 's/(.*)/print length($1), " $1\n" if (length($1)>254)/e' | sort -n
問題は、私は絶対パスの長さを見ていないよということで、私は、現在のディレクトリからのパスの長さを見ています。リストされたすべてのファイルの絶対パスを表示しながら、現在のディレクトリ内でファイルを再帰的に検索する方法はありますか?
パート2(Applescript) - パート1がターミナルで正しく動作したら、プロセスを少し自動化したいと思っています。私は、フォルダがFinderで強調表示されているときに、コマンドを実行することができ、ターミナルがポップアップしてコマンドとリストを実行するというAppleScriptを作成したいと思うことが好ましい。これは私がこれまで持っているものです。
tell application "Finder" to set theSel to selection
tell application "Terminal"
set theFol to POSIX path of ((item 1 of theSel) as text)
if (count of windows) is not 0 then
set shell to do script "cd " & quoted form of theFol in window 1
do script "find . -name \\* -type f | perl -ne 's/(.*)/print length($1), \" $1\\n\" if (length($1)>254)/e''" in shell
end if
activate
end tell
問題は、私はこのAppleScriptを実行すると、コマンドは動きを通過し始めたが、その後立ち往生し、私が見るすべては
>
私はあるということですctrl + cを押して、ターミナルウィンドウを使用し続ける必要があります。
誰も私がターミナルコマンドに表示されていないフラグを知っていますか?また、強調表示されたディレクトリの255文字以上のファイルの絶対パスと文字数を取得して一覧表示する別の方法もあります。
端末を使用する必要がありますか?それの目的は何ですか?あなたが求めている真の結果は何ですか? – ThrowBackDewd