Articles of ls

ls * .csv –ignore =“* pattern *”返回包含“pattern”的文件

为什么ls –ignore不会忽略这个模式? 看下面的例子: mkdir books cd books touch books_abby.csv touch books_karen.csv touch books_david.csv touch books_tom.csv 这会创build四个文件: $ ls books_abby.csv books_david.csv books_karen.csv books_tom.csv 如果你想忽略所有包含“tom”的文件名并列出它们, books_tom.csv仍然会返回: $ ls *.csv –ignore="*tom*" books_abby.csv books_david.csv books_karen.csv books_tom.csv 预期的结果是包含“tom”的文件被省略: $ ls *.csv –ignore="*tom*" books_abby.csv books_david.csv books_karen.csv

我将如何recursion列出名为X的所有目录的所有者和权限?

基本上我想做一个'ls -l'recursion地只显示那些名为web的目录。 我将如何做到这一点?

linux \ solaris +从文件打印特定的date格式

主题 – 在solaris上打印文件date,格式为:yymmdd(yy – year,mm – month,dd – day) 在Linux机器上,input以下命令以获得:file date 如下所示: ls -l –time-style=+%Y%m%d /etc/hosts | awk '{print $6}' 20121107 。 请咨询一下Solaris的语法? ,因为当我尝试在Solaris上运行时遇到错误: 。 ls -l –time-style=+%Y%m%d /etc/hosts ls: illegal option — time-style=+%Y%m%d

在CentOS 6.4上读取USB备份驱动器的input/输出错误

我突然看到我们的USB备份驱动器上有一些奇怪的行为,这对我来说是没有意义的: (2013-10-21 14:58:23 [root@newdc /]$ cd /mnt/backup/ (2013-10-21 14:59:03 [root@newdc backup]$ ls -la ls: reading directory .: Input/output error total 0 (2013-10-21 14:59:05 [root@newdc backup]$ df -h /mnt/backup Filesystem Size Used Avail Use% Mounted on /dev/sda1 917G 843G 28G 97% /mnt/backup 操作系统怎么可能知道有多less使用,但我不能作为根的任何一个? 或者更重要的是,这表明了什么问题? /var/log/messages说这个: Oct 21 14:57:54 g5 kernel: EXT4-fs error (device sda1): ext4_journal_start_sb: Detected […]

cygwinfind-ls行为像ls

我使用cygwin查找与-ls( find . -ls )选项以具有完整path的文件的列表。 由于UTF-16(在这种情况下的Windows XP)在cygwin下转换为en_UTF-8,所以特殊的字符重音被转换成2个八进制转义值(如果转换成\303\240如果我使用直接ls -lias命令,该string不会被翻译,并且可以与其他命令(sed,mv,cp,ln,…)中的简单的周围引用一起使用。 题: 有没有办法直接让查找返回文件名像LS? 实际上,我使用sed来使用临时文件和printf进行翻译,以获得八进制翻译的结果,但速度很慢,有点吓人,并且不符合防弹要求,尤其是对于基于此string的后续mv和rm。 我也使用一个find . -exec ls -lias {} \; find . -exec ls -lias {} \; 工作执行时间由于每个文件上的fork / shell / ls而爆炸(15分钟查找-ls,15小时-exec)

无法使用grep正则expression式来search包含句点的文件名

Ubuntu 14.x. 使用grep来search所有文件linuxtest-client2 。 这包括多个文件扩展名(csr,crt,key)。 当我grep的中间部分的文件名“2”,它也返回包含“2”除了“2”的行。 当使用ls -l。 这会导致返回文件大小,date和时间中具有“2”的结果。 为什么文件大小在这个grep后面没有句点的时候触发? root@ip-10-198-0-205:/etc/easy-rsa# ls -ltr keys/ | grep -E '*2.*' total 228 -rw——- 1 root root 3272 Oct 15 18:28 ca.key -rw-r–r– 1 root root 2451 Oct 15 18:28 ca.crt -rw——- 1 root root 3268 Oct 15 18:31 server.key -rw-r–r– 1 root root 769 Oct 15 18:42 […]

ls -l用几分钟的旧时间戳记(修改时间)不断更新日志文件

我给了命令ls -lt来查看哪些日志文件不断被写入,因为如果它们被写入,修改的时间将几乎非常接近date命令的输出。 但奇怪的是, ls命令输出中的修改时间对于正在被连续修改(写入)的所有日志文件来说显示为12分钟。 例如,如果我给的命令 date ; echo ; ls -lt *log 如果得到date的输出为Sun Jan 19 16:48:16 IST 2014 ,那么在命令给出时正在写入的ls -lt * log命令的输出将显示文件详细信息为: -rw-r–r– 1 root 12014 6.2M Jan 19 16:36 Imap.log 现在这里的文件Imap.log不断被写入,所以修改的时间也应该非常接近16:48 ,但是可以看出,它只是16:36 。 一个完整的12分钟的差异。 date命令的输出是正确的。 我尝试使用简单的ls -l , stat文件名来查看那里的详细信息,甚至stat命令显示修改时间戳是12分钟。 正在写入日志文件的分区安装在NFS上。 这是罪魁祸首吗? 我需要检查什么? 操作系统是CentOS 5.4。 内核是2.6.18-164.el5。

为什么这个带有点和反斜线的文件只显示ls -lah而不是ls?

我正在删除已被识别为感染的文件。 这个文件在名称中有点和窗口式的反斜杠。 (Linux的目录是用斜线分隔的“/”,而这个文件包含这样的“\”斜杠) 实际的文件名是(注意这不是一个path,这整个string是名称): ..\lib\plugin\amd.dll 这粘贴的文本显示我用ls -lah查看该文件(见第4行) -rw-rw—- 1 mysql mysql 9.3K Aug 11 2014 host.frm -rw-rw—- 1 mysql mysql 0 Aug 11 2014 host.MYD -rw-rw—- 1 mysql mysql 2.0K Aug 11 2014 host.MYI -rw-rw-rw- 1 mysql mysql 40K Nov 9 2014 ..\lib\plugin\amd.dll -rw-rw—- 1 mysql mysql 8.4K Feb 7 2015 lokfdh.frm -rw-rw—- 1 mysql […]

我怎样才能让ls和xargs组合省略path

我有一个名为lib的文件夹。 在那个文件夹中有一些文件。 我想获取以.jar结尾的文件的所有名称,并将它们连接成一行,用空格分隔。 我根本不需要path名。 我试过这个: ls lib/*.jar | xargs 和输出是 lib/file1.jar lib/file2.jar 但是我想要得到的是 file1.jar file2.jar 我怎样才能做到这一点? 我也试过找,但我得到同样的问题 find lib -name *.jar | xargs

如何在目录中查找最大的文件 – 忽略目录大小

我想要做这样的事情 du -a | sort -rn | head 但是我只想提取文件,忽略目录。 要清楚,我想遍历所有的子目录,但我不想find目录大小。 只是文件大小。 UPDATE 我也想要返回文件的完整path