Questions tagged «files»

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

7
如何在UNIX中创建大文件?
我在Windows中找到了一种做这种事情的方法 echo "This is just a sample line appended to create a big file. " > dummy.txt for /L %i in (1,1,21) do type dummy.txt >> dummy.txt http://www.windows-commandline.com/how-to-create-large-dummy-file/ 在UNIX中,有没有一种方法可以复制文件,追加然后重复该过程?像for .. cat file1.txt > file1.txt什么?
17 shell  files 

2
允许所有者创建和读取文件,但不允许修改或删除
我想授予用户在特定目录中创建和读取文件的权限,但不允许修改或删除文件。如果用户可以将文件追加到确定的位置,但是我宁愿不这样做。这是在Ubuntu Linux上。 我认为使用标准的Unix文件权限是不可能的,但是使用ACL可能做到这一点吗?用户将始终使用SFTP进行连接,因此,如果有某种方法可以在SFTP中进行控制(相对于OS权限),那就很好了。 绝对清楚,我想要以下几点: echo hello> test#成功,因为测试不存在,并且允许创建 echo hello >> test#是成功还是失败,取决于是否允许附加 echo hello2> test#失败,因为测试已经存在,并且不允许修改 cat test#成功,因为允许读取 rm test#失败,因为不允许删除 如果您想知道为什么要这样做,那就是制作一个能够抵抗勒索软件的Duplicati备份系统。
17 linux  files  permissions  acl 

4
为什么猫x >> x循环?
以下bash命令进入无限循环: $ echo hi > x $ cat x >> x 我可以猜到它开始写到stdout之后会cat继续读取x。但是,令人困惑的是,我自己的cat测试实现表现出不同的行为: // mycat.c #include <stdio.h> int main(int argc, char **argv) { FILE *f = fopen(argv[1], "rb"); char buf[4096]; int num_read; while ((num_read = fread(buf, 1, 4096, f))) { fwrite(buf, 1, num_read, stdout); fflush(stdout); } return 0; } 如果我运行: $ …

6
如何读取.war文件?
我正在尝试查看.war文件的内容。我首先使用设置了它的权限,chmod 777然后在尝试使用以下方法访问它时: cd /usr/local/standalone/deployments/Sample.war/WEB-INF/classes/ 它正在给予cd: /usr/local/standalone/deployments/Sample.war/WEB-INF/classes/: Not a directory,我无法进一步进行。 有人可以帮我解决这个问题吗?

3
使用rsync移动文件并删除目录?
最近,我需要删除大量文件(超过100万个),并且我读到这样做: rsync -av --delete `mktemp -d`/ ~/source && rmdir ~/source 是执行此操作最优化的方法之一,我可以保证它的速度比快rm -rf。 我不是这方面的专家,但是据我了解,rsync性能的原因与它列出文件的方式有关(我想是LIFO而不是FIFO)。现在,问题是,我还需要以有效的方式移动大量文件。经过一番搜索,我发现了这一点: rsync -av --ignore-existing --remove-source-files ~/source ~/destination 虽然这会删除所有移动的文件中~/source,该目录留在那里。由于我具有类似“循环”的目录结构files/directories,因此其数量非常接近1,因此我被迫再次运行第一个命令以完全摆脱该目录: rsync -av --ignore-existing --remove-source-files ~/source ~/destination && \ rsync -av --delete `mktemp -d`/ ~/source && rmdir ~/source 一条直线mv几乎可以立即完成,但是我的~/destination目录中有应保留的文件,因此mv不是一种选择。我找到了--prune-empty-dirsand --forcersync选项,但似乎都不如预期: --force force deletion of directories even if not empty --prune-empty-dirs prune …

2
在Linux系统上打开文件的行为如何?
我只是将日志文件重命名为“ foo.log.old”,并假定应用程序将开始在“ foo.log”处写入新的日志文件。我很惊讶地发现它跟踪日志文件到其新名称,并不断在“ foo.log.old”中追加行。 在Windows中,我不熟悉这种行为-我不知道是否有可能实现它。如何在Linux中实现此行为?在哪里可以了解更多信息?

6
如何缩短终端上显示的当前目录路径?
如果我在深层目录中,可以说: ~/Desktop/Dropbox/School/2017/C/A3/ 然后当我打开终端时,它说 bob@bob-ubuntu:~/Desktop/Dropbox/School/2017/C/A3/$ 然后我写我的命令。这很长,我在终端中写的每一行都转到下一行。我想知道是否有办法只显示当前目录。我希望它显示: bob@bob-ubuntu: A3/$ 这样就很清楚了,我总是可以pwd看到我的整个目录。我只是不希望整个目录在终端中可见,因为它占用了太多空间。

3
哪些关系将ACL掩码和文件的标准组权限联系在一起?
首先,我创建一个文件并检查它的标准权限和ACL条目: $ touch file; ls -l file; getfacl file -rw-r--r-- 1 user user 0 Jul 30 16:26 file # file: file # owner: user # group: user user::rw- group::r-- other::r-- 然后,我在文件上设置ACL掩码,然后再次检查它的标准权限和ACL条目: $ setfacl -m mask:rwx file $ ls -l file; getfacl file -rw-rwxr--+ 1 user user 0 Jul 30 16:26 …
17 files  permissions  acl 

3
如何使用`mv'强制覆盖非空目录
我想将一组文件/目录移动(而不是复制)到另一个目录,其中一些文件/目录的名称与目标目录中的文件/目录冲突。我的主要目标是移动文件,因此我可以忍受被覆盖的非空目录。 我目前正在使用mv ... destination,偶尔 mv:无法将“目标”移动到“ /目标/目标”:目录不为空 我尝试mv -f ... destination没有成功,并且由于我希望将文件从其原始位置删除,rsync因此似乎不合适。 另外,是否存在一个很好的解决方案,可以保留通过重命名以某种方式覆盖打算覆盖的文件?
17 files  rsync  rename 




4
在Linux中如何使用Shell脚本用下划线替换所有文件名中的空格?
我尝试了以下shell脚本,该脚本应该替换所有xml文件名中的空格 for xml_file in $(find $1 -name "* .xml" -type f); do echo "removing spaces from XML file:" $xml_file mv "$xml_file" "${xml_file// /_}"; done 假设我有一个名为的xml文件xy z.xml,那么它给出了: removing spaces from XML file: /home/krishna/test/xy mv: cannot stat `/home/krishna/test/xy': No such file or directory removing spaces from XML file: .xml mv: cannot stat …

3
备份和还原文件权限
是否有备份和还原文件所有权和权限(可以通过chown和更改的内容chmod)的方法? 您可以使用icacls在Windows中执行此操作。 那么访问控制列表呢?


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.