我试图在linux中创建一个简单的脚本,在一个folderX中遍历它的每个文件夹,重命名在那里找到的文件,并将它们移动到根(folderX)文件夹.我猜逻辑有点像这样:
-0> //in folderX
-0>for each folder == $folderY //just the last part, what comes after ~/folderX/[this]
-1> cd ./$folderY
-1> for each fileInY == $fileInY //just the last part, what comes after ~
每当我尝试用apt-get安装任何东西时,我都会得到以下错误
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
kde-l10n-engb linux-image-4.4.0-21-generic
linux-image-extra-4.4.0-21-generic
Use 'su
例如,我希望将c复制到ab/而不是用c将a/b转换为文件夹:
$ mkdir /a /b /ab /b/b
$ ln -s /ab /a/b
$ touch /b/b/c
$ ls -Rl
.:
total 12
drwxrwxr-x 2 a
drwxrwxr-x 2 ab
drwxrwxr-x 3 b
./a:
total 0
lrwxrwxrwx 1 b -> ab
./ab:
total 0
./b:
total 4
drwxrwxr-x 2 b
./b/b:
total 0
-rw-rw-r-- 1 c
我试过:
cp -rf /b/* /a/
cp: can
我试图运行一个for循环,该循环复制目录中的所有文件,然后将它们放在备份目录中。有多个名称不同的子目录,所以我想我应该使用多个通配符,所以我不需要列出所有这些子目录并添加另一个for循环。这是我的剧本
#!/bin/bash
DIR="/home/users/data/*"
for file in $DIR
do
cp "$file"/**/**/*.txt* "$DIR"/backup/"$file"
done
但是,当我运行它时,脚本不能进入子目录,并且认为目录是
/directory1/**/**/*.t