linux 如何提取文件夹名

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

提取当前文件名称

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

$ basename `pwd`

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

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

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

$ find . -type d -maxdepth 1

在 Linux 系统下,可以使用 ls 命令来获取文件夹内所有文件的名称。如果想要获取文件大小和最后修改时间,可以使用 ls -l 命令。这会列出文件的详细信息,包括文件大小和最后修改时间。示例命令如下:

ls -l /path/to/folder

其中 /path/to/folder 是文件夹的路径。

或者使用 find /path/to/folder -type f -printf '%s %p %TY-%Tm-%Td %TT\n' 这样能获取文件大小和最后修改时间

获取所有常规文件的文件名并打印出来的脚本listfile.sh如下

#!/bin/bash

dir="/*"

dir=$1$dir

for f in $dir

do

if [ -f $f ]

then

echo $f

fi

done

使用方法:

$ listfile.sh PATH

原理:

PATH参数是路径,将路径后加上“/*”,代表该目录下的所有文件和目录名,利用for循环比较每个文件是否是常规文件( -f比较运算符),若if表达式为真则打印

举例:

ls -l

total 36

-rwxrwxr-x 1 lipeng lipeng 48 Nov 29 20:08 aaa.sh

drwxrwxr-x 2 lipeng lipeng 4096 May 4 2015 byteorder

drwxrwxr-x 8 lipeng lipeng 4096 May 3 2015 hello

-rwxrwxr-x 1 lipeng lipeng 122 Nov 29 20:16 listfile.sh

-rw-rw-r-- 1 lipeng lipeng 177 Aug 1 03:10 main.cpp

drwxrwxr-x 2 lipeng lipeng 4096 Sep 13 16:42 matrix

drwxrwxr-x 5 lipeng lipeng 4096 Apr 28 2015 modbus

drwxrwxr-x 2 lipeng lipeng 4096 Sep 13 10:10 shtest

drwxrwxr-x 2 lipeng lipeng 4096 Sep 16 18:21 test

$ ./listfile.sh .

./aaa.sh

./listfile.sh

./main.cpp


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

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

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

发表评论

登录后才能评论

评论列表(0条)

    保存