小编Caz*_*azz的帖子

在终端中将每个文件从 JPEG 转换为 GIF

我之前使用 find 查找文件夹和子文件夹中的所有特定文件并对其进行处理

例如,我确实使用了

find /folder/ -name '*.txt' -exec chmod 666 {} \;
Run Code Online (Sandbox Code Playgroud)

此代码可轻松更改对文件夹中每个文本文件的写入权限。

现在我打算尝试以相同的方式将每个 jpg(甚至 JPG)转换为 gif,但不确定这是否那么容易。当我尝试使用 convert 命令工具时,它想要一个输入文件名和输出文件名,但我认为 find 没有给出,所以可能 find 不是正确的工具使用?

command-line convert

6
推荐指数
2
解决办法
1518
查看次数

使用 bash 列出所有文件夹和子文件夹

我尝试使用 PHP 读取我的文件夹和子文件夹来创建一个基本菜单供我使用,但我注意到当我这样做时需要一些时间,因为每次我转到页面时它都必须运行它。

然后我在想,为什么不使用 bash 并让它创建一个 PHP 可以读取的文本文件,并让它每天晚上使用 crontab 运行?所以我搜索并尝试过,但这并不容易。

使用此代码,我可以获得一个子文件夹

for D in /var/www/html/lib/*; do
    if [ -d "${D}" ]; then
        echo "${D}"
    fi
done
Run Code Online (Sandbox Code Playgroud)

它给了我

/var/www/html/lib/folder1
/var/www/html/lib/folder2
/var/www/html/lib/folder3
...
Run Code Online (Sandbox Code Playgroud)

但是文件夹都有子文件夹,比如

/var/html/lib/folder1/1990
...
Run Code Online (Sandbox Code Playgroud)

我的想法是做一个循环然后使用

myfolder= "${D}"
addresstoremove="var/www/html/"

printf '%s\n' "${myfolder//$addresstoremove/}" >> textfile.txt
Run Code Online (Sandbox Code Playgroud)

所以它删除了我在 PHP 代码中不需要的地址

command-line bash directory

4
推荐指数
1
解决办法
3904
查看次数

如果需要,向文件名添加零的简单方法

在这里的大力帮助下,我很快将所有 jpg 文件转换为 gif(再次感谢很多)

但是当我环顾我的文件时,我注意到我在某些文件夹的文件名中添加了一个零。

我试图拥有的文件名标准是 001.gif、002.gif.... 但有些文件有 01.gif、02.gif 等等,这对我不利。

因此,使用代码,我从转换中得到,我找到了一个叫做地球之星的东西,我准备好看看我是否可以为自己解决这个问题:)

但是当我运行代码时什么也没发生。现在我只是尝试看看是否可以转换具有 JPG 的文件

for f in /lib/**/*jpg; do
        if [ "${#f}" -eq 2 ]; then
    mv "$f" "0$f" 
    fi 
done
Run Code Online (Sandbox Code Playgroud)

batch-rename

2
推荐指数
1
解决办法
161
查看次数

标签 统计

command-line ×2

bash ×1

batch-rename ×1

convert ×1

directory ×1