Terminal 将终端命令转换为Applescript

Terminal 将终端命令转换为Applescript,terminal,applescript,Terminal,Applescript,我有下面的终端命令,我想使用applescript自动执行。我还想有一个命令cd目录的文件夹,我想应用该命令第一。cd之后,将其保存到保存.pdf文件的文件夹中。此代码查看文件名的第一个字母,并根据该字母将文件排序到与文件的第一个字母对应的字母文件夹中 for x in `ls -1 | sed -e 's/^\(.\).*/\1/' | sort -u`; do mv -i ${x}?* $x done 我该怎么做呢?我是个新手。如有任何见解,将不胜感激。我愿意学习Applescript,但

我有下面的终端命令,我想使用applescript自动执行。我还想有一个命令cd目录的文件夹,我想应用该命令第一。cd之后,将其保存到保存.pdf文件的文件夹中。此代码查看文件名的第一个字母,并根据该字母将文件排序到与文件的第一个字母对应的字母文件夹中

for x in `ls -1 | sed -e 's/^\(.\).*/\1/' | sort -u`; do
mv -i ${x}?* $x
done
我该怎么做呢?我是个新手。如有任何见解,将不胜感激。我愿意学习Applescript,但是,我不确定从哪里开始实现它

谢谢

试试这个:

choose folder with prompt "Select the original folder" default location (path to documents folder)

set folderPath to contents of result
set folderPath to POSIX path of folderPath

do shell script "for x in `ls -1 " & folderPath & " | sed -e 's/^\\(.\\).*/\\1/' | sort -u`; do destination=$(echo $x | tr '[:lower:]' '[:upper:]'); mkdir " & folderPath & "$destination; mv -i " & folderPath & "${x}?* " & folderPath & "$destination/; done"
它忽略了大写,即:以
a
a
开头的每个文件都被移动到文件夹
a/

编辑1: 尝试创建目标文件夹,但如果该文件夹已存在,请静默失败并将文件移动到该文件夹

编辑2: 默认情况下打开Dropbox文件夹:

set dropboxFolder to (POSIX path of (path to home folder) & "Dropbox")
choose folder with prompt "Select the original folder" default location (POSIX file dropboxFolder as alias)
编辑红色3: 最后的剧本:

set dropboxFolder to (POSIX path of (path to home folder) & "Dropbox")
choose folder with prompt "Select the original folder" default location (POSIX file dropboxFolder as alias)

set folderPath to contents of result
set folderPath to POSIX path of folderPath

do shell script "for x in `ls -1 " & folderPath & " | sed -e 's/^\\(.\\).*/\\1/' | sort -u`; do destination=$(echo $x | tr '[:lower:]' '[:upper:]'); mkdir " & folderPath & "$destination; mv -i " & folderPath & "${x}?* " & folderPath & "$destination/; done"

这只是更改了文件名。如果不将文件名更改为文件名起始字母的文件夹,则不会移动该文件。有什么想法吗?感谢您的回复。我也尝试了以下操作,但似乎无法实现:在ls-1 | sed-e的/^(.)./\1/'| sort-u;do mv-i${x}?*$x done中为x编写脚本“cd~/desktop/hazelúorganization/test1;for x”thanks@JPaul刚刚编辑,现在移动到正确的文件夹,如果该文件夹不存在,在移动文件之前创建它。希望有帮助。它实际上并没有忽略文件夹的大小写。如果我用小写字母启动文件夹,则会出现错误。它仍然会移动文件,但会产生一个错误,我可以退出applescript。任何想法。非常感谢您的帮助。我已成功地将此应用于桌面上的文件夹,但当我尝试将此应用于Dropbox上的文件夹时,它不起作用。要将此脚本应用到Dropbox上的文件夹,是否需要执行一些特殊操作?谢谢你的帮助。