标签: linux

Shell命令到tar目录,不包括某些文件/文件夹

是否有一个简单的shell命令/脚本支持排除某些文件/文件夹被存档?

我有一个目录需要使用子目录进行存档,该子目录包含许多我不需要备份的非常大的文件.

不完全解决方案:

tar --exclude=PATTERN命令与给定模式匹配并排除这些文件,但我需要忽略特定文件和文件夹(完整文件路径),否则可能会排除有效文件.

我还可以使用find命令创建文件列表并排除我不想存档的文件并将列表传递给tar,但这仅适用于少量文件.我有成千上万.

我开始认为唯一的解决方案是创建一个文件,其中包含要排除的文件/文件夹列表,然后使用rsync --exclude-from=file将所有文件复制到tmp目录,然后使用tar来存档该目录.

谁能想到更好/更有效的解决方案?

编辑:cma的解决方案效果很好.最重要的是--exclude='./folder' 必须在tar命令的开头.完整命令(cd首先,所以备份是相对于该目录):

cd /folder_to_backup
tar --exclude='./folder' --exclude='./upload/folder2' -zcvf /backup/filename.tgz .
Run Code Online (Sandbox Code Playgroud)

linux shell tar archive

760
推荐指数
16
解决办法
82万
查看次数

如何使用SSH从服务器下载文件?

我需要从服务器下载文件到我的桌面.(UBUNTU 10.04)我没有对服务器的Web访问权限,只有ssh.

如果有帮助,我的操作系统是Mac OS X和iTerm 2作为终端.

unix linux ssh

750
推荐指数
4
解决办法
124万
查看次数

给定两个目录树,如何找出哪些文件有所不同?

如果我想找到两个目录树之间的差异,我通常只执行:

diff -r dir1/ dir2/
Run Code Online (Sandbox Code Playgroud)

这准确地输出了相应文件之间的差异.我有兴趣只获取内容不同的相应文件列表.我假设这只是一个传递命令行选项的问题diff,但我在手册页上找不到任何内容.

有什么建议?

unix linux bash shell diff

743
推荐指数
7
解决办法
48万
查看次数

为什么"cd"不能在shell脚本中工作?

我正在尝试编写一个小脚本来将当前目录更改为我的项目目录:

#!/bin/bash
cd /home/tree/projects/java
Run Code Online (Sandbox Code Playgroud)

我将此文件保存为proj,添加了执行权限chmod,并将其复制到/usr/bin.当我通过以下方式调用它时 proj,它什么都不做.我究竟做错了什么?

linux shell

735
推荐指数
18
解决办法
59万
查看次数

将所有输出重定向到文件

我知道在Linux中,要将屏幕输出重定向到文件,我可以使用>tee.但是,我不确定为什么部分输出仍然输出到屏幕而不写入文件.

有没有办法将所有输出重定向到文件?

linux bash io-redirection

712
推荐指数
9
解决办法
102万
查看次数

在DOS中将DOS行结尾转换为Linux行结尾

如果我打开我在Windows中创建的文件,则所有行都以^M.
如何一次删除这些字符?

linux vim dos2unix editor file

688
推荐指数
16
解决办法
52万
查看次数

如何衡量应用程序或进程的实际内存使用情况?

这里详细介绍了这个问题.

如何衡量Linux中应用程序或进程的内存使用情况?

了解Linux上的内存使用情况的博客文章来看,ps这不是用于此意图的准确工具.

为什么ps"错"

根据您的观察方式,ps不会报告进程的实际内存使用情况.它真正做的是显示每个进程在运行的唯一进程中将占用多少实内存.当然,典型的Linux机器在任何给定时间都有几十个进程运行,这意味着报告的VSZ和RSS数量ps几乎肯定是错误的.

linux memory process

686
推荐指数
24
解决办法
116万
查看次数

如何'grep'连续流?

这是否可以grep连续使用?

我的意思是一种tail -f <file>命令,但grep在输出上只是为了保留我感兴趣的行.

我已经尝试了,tail -f <file> | grep pattern但似乎grep只能执行一次tail,也就是说永远不会.

linux bash shell grep tail

678
推荐指数
7
解决办法
30万
查看次数

如何获取文件的完整路径?

有没有一种简单的方法可以打印完整的路径file.txt

file.txt = /nfs/an/disks/jj/home/dir/file.txt
Run Code Online (Sandbox Code Playgroud)

<command>

dir> <command> file.txt  
Run Code Online (Sandbox Code Playgroud)

应该打印

/nfs/an/disks/jj/home/dir/file.txt
Run Code Online (Sandbox Code Playgroud)

unix linux file path

669
推荐指数
9
解决办法
86万
查看次数

递归计算Linux目录中的文件

如何递归计算Linux目录中的文件?

我找到了这个:

find DIR_NAME -type f ¦ wc -l
Run Code Online (Sandbox Code Playgroud)

但是当我运行它时,它返回以下错误.

find:paths必须在表达式之前:|

linux

667
推荐指数
13
解决办法
60万
查看次数

标签 统计

linux ×10

shell ×4

bash ×3

unix ×3

file ×2

archive ×1

diff ×1

dos2unix ×1

editor ×1

grep ×1

io-redirection ×1

memory ×1

path ×1

process ×1

ssh ×1

tail ×1

tar ×1

vim ×1