Linux 在UNIX中退出一次目录中多个文件的隐藏属性

Linux 在UNIX中退出一次目录中多个文件的隐藏属性,linux,unix,command,pipeline,hidden-files,Linux,Unix,Command,Pipeline,Hidden Files,大家好 我想知道是否有一个命令集的命令(可能是一个管道集),它可以用来更改存储在特定目录中的许多文件的隐藏属性,使用相同的名称 即 我想用一组命令取消隐藏所有这些文件(我不在乎是否必须使用管道),而不是使用mv.hidden\u file\u name not\u hidden\u file\u name 解决方案必须是OSX 在Debian派生系统上使用prename(rename) 像这样的 for origname in .[0-9A-Za-z]* do if [ -f "$

大家好

我想知道是否有一个命令集的命令(可能是一个管道集),它可以用来更改存储在特定目录中的许多文件的隐藏属性,使用相同的名称

我想用一组命令取消隐藏所有这些文件(我不在乎是否必须使用管道),而不是使用
mv.hidden\u file\u name not\u hidden\u file\u name

解决方案必须是OSX

在Debian派生系统上使用
prename
rename

像这样的

for origname in .[0-9A-Za-z]*
do   
    if [ -f "${origname}" ]; then
        # compute your newname how you want it
        mv "${origname}" "${newname}
    fi
done
你必须决定你想要的新名称是什么-你将去掉前导的点
,但只做可能与同名的现有.wma文件发生冲突的事情,所以也可以附加
.tmp
——比如:


没有所谓的“隐藏属性”。您似乎想做的是重命名文件,使其名称不以
开头。请参阅的答案,了解一种方法。我忘了提到解决方案必须与OSX兼容。:)这太完美了,我只需要管道。我试着用sed,但我不能去掉前面的圆点S代表i in.[0-9A-Za-z]*;do echo$i|sed“去除前导点的常规表达式”;doneI有这个问题,但我需要解决.wma:S for i in.[0-9A-Za-z]*;Don=
echo“$i”sed“s/\.//g”
;mv“$i”“$N”;完成
prename 's/^.//' .*.wma
for origname in .[0-9A-Za-z]*
do   
    if [ -f "${origname}" ]; then
        # compute your newname how you want it
        mv "${origname}" "${newname}
    fi
done
.One Love.wma  --becomes-->  One Love.wma.tmp