Questions tagged «files»

操纵文件:复制,重命名,搜索,分析,归档等。有关对文件中的文本进行操作的信息,请参见/ text-processing。有关“文件”文件管理器(以前为Nautilus)的问题,请参阅/ nautilus。

2
为什么硬链接似乎占据与原始链接相同的空间?
多亏了在这里和此页面的一些常见问题解答,我现在了解了链接。我看到硬链接用不同的名称引用相同的inode,而副本是不同的“节点,具有不同的名称。加上软链接具有与它们的inode相同的原始文件名和路径,因此如果移动文件,则链接会中断。 因此,我用一些文件(下面的“ saluton_mondo.cpp”)测试了我学到的东西,制作了一个硬链接和一个软链接以及一个副本。 jmcf125@VMUbuntu:~$ ls -lh soft hard copy s*.cpp -rw-rw-r-- 1 jmcf125 jmcf125 205 Aŭg 27 16:10 copy -rw-rw-r-- 2 jmcf125 jmcf125 205 Aŭg 25 13:34 hard -rw-rw-r-- 2 jmcf125 jmcf125 205 Aŭg 25 13:34 saluton_mondo.cpp lrwxrwxrwx 1 jmcf125 jmcf125 17 Aŭg 27 16:09 soft -> saluton_mondo.cpp 我发现尴尬的是,硬链接的大小与原始大小相同,并且在逻辑上与副本大小相同。如果硬链接和原始链接共享同一个索引节点(即具有数据且仅在文件名上有所不同),那么硬链接不应该仅使用其名称的空间而不是205个字节吗?还是ls -lh返回的原始文件的大小?但是,我怎么知道文件名占用什么空间呢?这里说硬链接没有大小。他们的文件名和原始文件名一起保存吗?硬链接的文件名存储在哪里?

5
列出目录中的X个随机文件
有没有一种方法可以使用标准Linux命令从目录中列出一组30个随机文件?(在中zsh) 这里描述的最佳答案对我sort不起作用(无法识别该选项-R)
14 shell  files  zsh 

3
dd可以替代吗?
我还应该使用其他哪些工具来截断,查找和跳过文件。dd的命令行选项似乎不方便且很陌生,我不喜欢在缓慢但精确的搜索模式(bs=1)和快速但不灵活的模式(bs=4k或其他)之间进行选择。 是否有更现代的工具可以从一个文件(或管道,套接字或开发人员)的31337位置读取555个字节,并将它们写入到位置128205的另一个文件中(使用块512 + 43)(带或不带截断)?
14 files  utilities  dd  binary 


4
dd:多个输入文件
我需要串联两个文件中的块: 如果需要串联整个文件,我可以简单地做 cat file1 file2 > output 但是我需要从第一个文件中跳过第一个1MB,而我只希望从第二个文件中跳过10 MB。听起来像是工作dd。 dd if=file1 bs=1M count=99 skip=1 of=temp1 dd if=file2 bs=1M count=10 of=temp2 cat temp1 temp2 > final_output 有可能一步一步做到这一点吗?即,无需保存中间结果?我可以在中使用多个输入文件dd吗?
14 files  dd  cat  data 

4
循环浏览文件夹并列出文件
我有一个名为“ sample”的文件夹,并且其中有3个文件。我想编写一个Shell脚本,它将读取示例文件夹中的这些文件,并使用curl将其发布到HTTP站点。 我写了以下文件列出文件夹中的文件: for dir in sample/*; do echo $dir; done 但这给了我以下输出: sample/log sample/clk sample/demo 它在其中附加了父文件夹。我希望输出如下(没有父文件夹名称) log clk demo 我该怎么做呢?


4
根据文件名从终端删除特定文件
我有一个包含名称文件的目录 rho_0.txt rho_5000.txt rho_10000.txt rho_150000.txt rho_200000.txt 等等。我想删除所有5000的倍数。 我尝试了以下方法:printf 'rho_%d.txt\n' $(seq 5000 10000 25000) | rm,但这给了我回应rm: missing operand。 还有另一种方法吗?
13 files  rm 

4
软件包升级后无法重新安装/恢复为只读
我正在使用Debian Stretch。我的根分区已安装read-only。仅当我安装或升级软件包时,才/重新安装到read-write(通过使用apt钩子),然后重新安装回ro。 有时在软件包升级后,我无法重新安装/回只读状态: mount -o remount,ro / mount: / is busy 在较旧的Debian版本(Wheezy)上,我可以列出已与取消链接的打开文件lsof: lsof +L1 或者,更具体地说,是防止阻止/重新安装到ro的文件: { lsof +L1 ; lsof|sed -n '/SYSV/d; /DEL|(path /p;' ; } | grep -Ev '/(dev|home|tmp|var)' 但是,在Debian Stretch上,lsof +L1不会列出任何文件。 我没有看到任何改变+|-L在man lsof这可以解释为什么它停止工作。 为什么lsof + L1不再列出已取消链接的打开文件? 如何列出阻止/重新挂载为只读的文件? 更新 我已经停止了所有可以停止的进程,只有它们可以运行,init并且getty仍在运行,但是仍然无法重新安装/到ro。
13 debian  files  apt  readonly  lsof 



2
为什么触摸创建新文件?
我知道该touch命令用于更新文件的上次修改日期。如果请求的文件在文件系统上不存在,它也可用于创建新文件。 由于touch(顾名思义),应该只更新上次修改日期,为什么还要尝试创建一个新文件? 仅仅是用触控代码编写的支票,还是导致文件创建的其他方式?
13 files  touch 


4
如何使用Vim编辑网络上的文件?
目前,我正在通过SSH进入服务器并在服务器上执行Vim的方式来实现。这样做的好处是,不必处理通过SCP从远程服务器打开文件的繁琐语法,并且更重要的是,能够真正快速浏览服务器的文件系统。另一方面,它有滞后性,这使得编辑有点困难。 编辑大量远程文件的规范方法是什么?
13 networking  files  vim 

4
Grep成千上万个文件
我的目录包含cca 26 000个文件,我需要在所有这些文件中进行grep。问题是,我需要尽可能快的速度,因此制作grep从find命令获取一个文件的名称并将匹配项写入文件的脚本不是理想的。在出现“参数列表过长”之前,cca花了2分钟时间在所有这些文件中进行grep。有什么想法怎么做?编辑:有一个脚本一直在制作新文件,因此不可能将所有文件放在不同的目录中。

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.