如何找到所有.sh文件,并使用Linux中的bash使它们可执行?

时间:2017-06-28 09:04:04

标签: linux bash

当我启动时,我想在找到这些.sh文件时将路径传递给文件夹

我从这个

开始
#!/bin/bash
find /home/user_name -name "*.sh" 

脚本必须在带有可执行文件的徽标列表中写入

4 个答案:

答案 0 :(得分:13)

通过直接查找(我已经纠正 - 这是最安全和首选的 - 请参阅下面的评论):

{{1}}

答案 1 :(得分:1)

如果要使当前用户的所有文件都可执行,可以使用以下命令(假设您拥有目标主文件夹中所有文件的权限):

find /home/user_name -name "*.sh" -print0 | xargs -0 chmod u+x

答案 2 :(得分:1)

另一种方式:

find . -name "*.sh" -exec chmod ux+y {} \;

您可以先使用

检查您的命令
find . -name "*.sh" -print

答案 3 :(得分:-1)

通过@kabanus命令

#!/bin/bash

# chmod u+x $(find $1 -name "*.sh")
# ls -1 $1/*.sh
find $1 -name "*.sh" -print -exec chmod u+x {} +

并用作

$ ./script.sh /your_directory

/your_directory - 脚本中的第一个参数($1)。