Questions tagged «directory»

用于存储计算机文件的文件系统结构。

3
如何让ls列出带有尾随正斜杠的目录?
我的壳是bash。如何获得ls显示带有尾部正斜杠的目录的输出?当我这样做时ls,tcsh将提供所需的输出。我如何在bash不使用任何参数的情况下发生这种情况? 例如。 bin/ lib/ src/ file1.txt file2.txt
12 bash  directory  ls 




3
是否可以在不使用子Shell的情况下执行Shell命令替换?
我有一种情况,要求不使用子shell进行命令替换。我有这样的构造: pushd $(mktemp -d) 现在,我要一次性退出并删除临时目录: rmdir $(popd) 但是,这不起作用,因为popd它不返回弹出的目录(它返回新的目录,现在返回当前目录),并且还因为它是在子shell中执行的。 就像是 dirs -l -1 ; popd &> /dev/null 将返回弹出的目录,但不能这样使用: rmdir $(dirs -l -1 ; popd &> /dev/null) 因为popd只会影响子外壳。所需要的是做到这一点的能力: rmdir { dirs -l -1 ; popd &> /dev/null; } 但这是无效的语法。有可能达到这种效果吗? (注意:我知道我可以将临时目录保存在变量中;我试图避免这样做,并在此过程中学习新知识!)
11 shell  directory 

2
是否有任何可以成功执行ln -d的文件系统?
从ln的手册页中: -d, -F, --directory allow the superuser to attempt to hard link directories (note: will probably fail due to system restrictions, even for the superuser) 是否有任何文件系统驱动程序实际上允许这样做,还是唯一的选择mount --bind <src> <dest>?还是这种行为被内核阻止,甚至还没有到达文件系统特定的驱动程序? 注意:我实际上并不打算在任何计算机上执行此操作,只是出于好奇。

4
保留每个工作目录的历史记录(参见每个shell会话)
有没有一种方法可以使现代外壳的历史特征仅限于路径? 我的工作上下文被拆分为文件系统上的路径,并且shell活动的模式(例如重复发出的命令)对于每个“项目”而言都是不同的。如果我可以将历史记录功能的作用域范围限定为从当前路径(或子路径)发出的命令,那就太好了。

3
使用find删除除某个子目录中的所有文件以外的所有文件
我想递归地删除该文件夹中一段时间​​未访问的a所有文件,但子文件夹中的所有文件除外b。 find a \( -name b -prune \) -o -type f -delete 但是,我收到一条错误消息: 查找:-delete操作自动打开-depth,但是当-depth有效时,-prune不执行任何操作。如果仍要继续,则只需显式使用-depth选项。 添加-depth会导致b其中包含所有文件,这一定不会发生。 有人知道安全的方法来完成这项工作吗?
11 find  directory  rm 


4
递归重命名与正则表达式匹配的子目录
我有一个媒体服务器,其文件夹名为Series。(/media/Expansion2/Series/) 在其中,我有(惊讶!)电视连续剧。这些只是节目名称,例如,/media/Expansion2/Series/The Big Bang Theory/ 在每个节目的文件夹内(这是问题所在),我有季节文件夹。我目前混合了以下两个约定(可能还有其他几个约定): /media/Expansion2/Series/The Big Bang Theory/The Big Bang Theory Season 1 /media/Expansion2/Series/The Big Bang Theory/Season 2 最后,我想将所有文件夹重命名为just Season #。 作为正则表达式,我可能会说类似 s/.*(Season \d)/$1 仅适用于文件夹,不适用于文件。我可能还应该提到,这是用于大约50多个show sub文件夹的,因此它需要从/media/Expansion2/Series/级别开始并研究每个系列:)

10
计算目录中文件数量的最佳方法是什么?
如果解析的输出ls很危险,因为它的输出可能会破坏某些时髦的字符(空格\n,...),那么知道目录中文件数量的最佳方法是什么? 我通常依靠find避免这种解析,但是find mydir | wc -l出于相同的原因,它也会中断。 我现在正在使用Solaris,但是我正在寻找一个尽可能在不同的unice和不同的shell中移植的答案。

4
使用ssh以编程方式创建远程目录
使用Shell脚本,如何使用ssh从serverA-> serverB远程创建目录?我可以通过ssh命令传递create directory命令吗?怎么样? 我基本上希望基于日期(例如20110304)远程创建目录(如果尚不存在)。
11 shell  ssh  directory 

3
如何确定NFS远程服务器是否正在导出目录?
在我的脚本中,我具有多个状态层: 遥控器可用(ping) 远程NFS服务处于活动状态 远程NFS导出某个目录 远程NFS已挂载(挂载) 对于(2)和(3),我相信rcpinfo是最好的选择。对于(2),我无法弄清楚如何在不启动子shell的情况下将查询范围缩小到NFS服务(此应用程序不接受)。对于(3),我不确定该信息是否甚至可以远程使用(ssh当然,无需输入)。 我正在使用RHEL 6,无法访问标准发行版中未包含的程序。
11 rhel  directory  nfs  remote 

3
子目录中的Symlink别名文件不更改当前目录
在不移动子目录的情况下,将一个文件符号链接到子目录中的新文件似乎很简单。但是有关语法的某些问题令人困惑,并且与我的期望背道而驰。这是一个测试案例: mkdir temp cd temp mkdir deploy echo "Contents of the build file!" > deploy/resources.build.php ln -s deploy/resources.build.php deploy/resources.php cat deploy/resources.php #bad symlink 这只会创建一个损坏的符号链接!我正在构建环境安装脚本中运行此脚本,因此,我尽可能避免更改当前工作目录。 ln -s deploy/resources.build.php resources.php cat deploy/resources.php 也不起作用,因为它在temp目录而不是deploy子目录中创建符号链接。 cd deploy ln -s resources.build.php resources.php cd .. 这行得通,但我更希望知道如何在不更改目录的情况下进行操作。 使用完整路径,例如: /home/whatever/src/project/temp/stuff/temp/deploy/resources.build.php 是可行的,但不可行且有些不切实际,尤其是在构建环境中,其中所有项目内容在构建之间可能会有所不同,等等。 如何在子目录中的两个文件之间创建符号链接,而又不移入该子目录,也不能为该文件赋予新的别名?
11 directory  symlink  ln 

4
如何从递归目录中提取专门命名的文件夹,然后删除其他文件夹?
我有从解压缩zip文件获得的这种目录树: x-> y-> z-> 运行 ->文件和目录 因此,有4个目录,其中3个没有文件(x,y,z),仅包含1个子目录,还有一个我感兴趣的目录,名为“ run ”。 我想将“运行”目录本身(包括其中的所有内容)移动到我解压缩的“根”位置(即“ x”所在的位置,但不在“ x”内部)。 假设:存在一个名为“ run”的文件夹,但我不知道要进入“ cd”目录必须有多少个目录(可以是3(x,y,z),可以是10个或更多)。也是未知的,不必是x,y,z等)。 我该怎么做?我尝试了这个问题的许多变体,但都失败了。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.