linux 如何提取文件夹名

linux 如何提取文件夹名,第1张

提取当前文件夹名称

可以结合使用pwd命令和basename命令,pwd命令返回当前工作路径,basename命令去掉前导的目录部分后打印“名称”。

$ basename `pwd`

注意:pwd两侧为反引号`,作用是运行两个反引号之间的命令,并且将命令运行的结果返回。

提取当前文件夹的所有子文件夹

可以使用find命令,设置查询文件类型参数为-type为目录d,还可以设置-maxdepth参数为1,不查询二级子目录。

$ find . -type d -maxdepth 1

两种方法,选择自己喜欢的风格:

(1)同一楼:ls

-l

|grep

^d

从ls

-l

的结果中提取以d(directory目录)开头的字串,效果如下:

drwxrwxr-x

4

haha

haha

40K

Dec

8

03:01

CIAF2

drwxrwxr-x

2

haha

haha

4.0K

Dec

10

14:08

Reference

(2)同样的思路

ls

-F

|

grep

/

从ls

-F

的结果中提取以

/(表示目录),效果如下:

CIAF2/

Reference/

直接使用cp命令即可,如果要复制子目录则添加加-R参数即可,使用:cp 源目录/* 目标目录 格式命令可实现复制文件夹下所有文件到另一目录。cp命令说明:cp命令用来将一个或多个源文件或者目录复制到指定的目的文件或目录。它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。cp命令还支持同时复制多个文件,当一次复制多个文件时,目标文件参数必须是一个已经存在的目录,否则将出现错误。 语法 cp(选项)(参数) 选项 -a:此参数的效果和同时指定"-dpR"参数相同; -d:当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录; -f:强行复制文件或目录,不论目标文件或目录是否已存在; -i:覆盖既有文件之前先询问用户; -l:对源文件建立硬连接,而非复制文件; -p:保留源文件或目录的属性; -R/r:递归处理,将指定目录下的所有文件与子目录一并处理; -s:对源文件建立符号连接,而非复制文件; -u:使用这项参数后只会在源文件的更改时间较目标文件更新时或是名称相互对应的目标文件并不存在时,才复制文件; -S:在备份文件时,用指定的后缀“SUFFIX”代替文件的默认后缀; -b:覆盖已存在的文件目标前将目标文件备份; -v:详细显示命令执行的 *** 作。 参数 源文件:制定源文件列表。默认情况下,cp命令不能复制目录,如果要复制目录,则必须使用-R选项; 目标文件:指定目标文件。当“源文件”为多个文件时,要求“目标文件”为指定的目录。示例:cp aaa/* /bbb复制目录aaa下所有文件到/bbb目录下


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/8461834.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-16
下一篇2023-04-16

发表评论

登录后才能评论

评论列表(0条)

    保存