コマンドは期待どおりに機能するようです。デスクトップ上のフォルダでテストしたので、
chflags hidden ~/Desktop/testDir/*
chflags nohidden ~/Desktop/testDir/*
仕事をします。
あなたのifステートメントは機能しません。
if "chflags hidden ~/Desktop/*" then
それは何もしません。不足している「do shell script」を追加しても、次のようになります。
if (do shell script "chflags hidden ~/Desktop/testDir/*") then
これにより、実際にはすべてが非表示になり (この時点では必要ありません)、何も返されず、AppleScript エラーが生成されます。
したがって、非表示の状態を確認する別の方法を探す必要があります。
これを行うコードサンプルは次のとおりです。
tell application "System Events"
set filePath to file (((path to desktop) as text) & "myReferenceFile.txt")
end tell
set this_info to info for filePath
if visible of this_info is true then
log "VISIBLE"
else
log "INVISIBLE"
end if
参照ファイルがある場合は、そのパスを使用して非表示かどうかを確認できます。