标签: unix-shell

伪造特定 shell 会话的日期

我当然想在这里实现一些奇怪的东西,但我想在 GNU/Linux 上为 shell 会话在本地伪造日期。我需要对程序在不同日期的行为进行黑盒测试,修改系统范围的日期可能会产生不需要的副作用(cron 作业、混乱的日志等)。

有任何想法吗 ?

linux unix shell time unix-shell

40
推荐指数
3
解决办法
2万
查看次数

将回声附加到文件?

在 linux 中,我该如何做类似的事情

echo 'hello world' > log.txt
Run Code Online (Sandbox Code Playgroud)

但它不是覆盖 log.txt 的内容,而是附加到 log.txt 的末尾?

linux shell unix-shell

33
推荐指数
3
解决办法
5万
查看次数

动态压缩 dd 备份

也许这听起来像一个愚蠢的问题,但我试图这样做的方式不起作用。

我在 livecd 上,驱动器已卸载,等等。

当我以这种方式备份时

sudo dd if=/dev/sda2 of=/media/disk/sda2-backup-10august09.ext3 bs=64k
Run Code Online (Sandbox Code Playgroud)

...通常它会工作,但我在复制到的外部高清上没有足够的空间(它几乎适合它)。所以我想以这种方式压缩

 sudo dd if=/dev/sda2 | gzip > /media/disk/sda2-backup-10august09.gz
Run Code Online (Sandbox Code Playgroud)

...但我的权限被拒绝。我不明白。

linux backup unix-shell

29
推荐指数
4
解决办法
9万
查看次数

何时在 grep 中使用单引号、双引号或不使用引号?

在尝试在文件中搜索简单模式“hello”时,以下所有形式的 grep 都有效:

  • grep你好文件1
  • grep“你好”文件1
  • grep“你好”文件1

是否存在上述形式之一有效但其他形式无效的特定情况。如果我用一个代替另一个有什么区别吗?

unix shell grep command unix-shell

23
推荐指数
2
解决办法
4万
查看次数

删除名称中带有连字符的 UNIX 目录

通过我笨手笨脚的操作,我不小心创建了一个名为(例如)-A 的目录,并最终用文件填充了它。

我想删除该目录。我试过了:

rmdir -- -A
Run Code Online (Sandbox Code Playgroud)

但它告诉我该目录中仍然有文件。而且我不知道如何 cd 进入目录以删除所述文件。

我该怎么做才能摆脱这个麻烦的目录?

unix unix-shell

14
推荐指数
2
解决办法
6808
查看次数

复制文件权限,但不复制 Unix 中的文件

(来自:https : //stackoverflow.com/questions/15245144/copy-file-permissions-but-not-files,因为离题而关闭)

我有两个相同目录树的副本。它们几乎具有相同的文件(一个版本可能有几个额外的或丢失的文件)。但是,大多数文件对于这两个目录都是通用的(具有相同的相对路径和所有内容)。

假设这些在目录中:

version1/
version2/
Run Code Online (Sandbox Code Playgroud)

问题是 version1/ 中的权限搞砸了,我想从 version2/ 复制权限,但不要替换 version1/ 中较新的文件。

是否有通过 shell 命令或脚本自动执行此操作的方法?

unix copying unix-shell file-permissions

14
推荐指数
4
解决办法
1773
查看次数

在 *nix 中,如何确定特定文件在哪个文件系统上?

在通用的现代 unix 环境(例如 GNU/Linux、GNU/Solaris 或 Mac OS X)中,是否有一种好方法可以确定特定绝对文件路径所在的挂载点和文件系统类型?

我想我可以执行mount命令并手动解析该命令的输出并将其与我的文件路径进行字符串比较,但在此之前我想知道是否有更优雅的方法。

我正在开发一个使用扩展属性的 BASH 脚本,并希望让它为各种文件系统和主机环境做正确的事(在可能的范围内)。

unix files filesystems bash unix-shell

13
推荐指数
3
解决办法
1万
查看次数

我如何从 cli(不是 uname -a)找出我正在运行的 Fedora 版本?

我想知道这个盒子是 Fedora Core 4 还是 Redhat 9,还是 CentOS 等等……而不是它是否有 Kernel 2.6.x

unix unix-shell

13
推荐指数
2
解决办法
3万
查看次数

复制大量文件时出现“参数列表太长”错误

我正在使用以下命令:

\cp -uf /home/ftpuser1/public_html/ftparea/*.jpg /home/ftpuser2/public_html/ftparea/
Run Code Online (Sandbox Code Playgroud)

我收到错误:

-bash: /bin/cp: Argument list too long
Run Code Online (Sandbox Code Playgroud)

我也试过:

ls /home/ftpuser1/public_html/ftparea/*.jpg | xargs -I {} cp -uf {} /home/ftpuser2/public_html/ftparea/
Run Code Online (Sandbox Code Playgroud)

还是有 -bash: /bin/ls: 参数列表太长

有任何想法吗?

linux bash unix-shell

12
推荐指数
2
解决办法
4万
查看次数

cp -p 将保留某些文件的时间,但不是所有文件?

我在一台机器上有一个源目录,里面有一堆文件,所有文件都具有相同的权限,我想复制到另一个目录,通过 SMB 挂载。

[tmark@dexter JR09141045 roche_454_transfer]$ ls -l /source_dir
total 71348
-rwxrwxrwx 1 adminrig lifelabs 19768377 Mar 25 23:29 1.TCA.454Reads.fna
-rwxrwxrwx 1 adminrig lifelabs 53093396 Mar 25 23:29 1.TCA.454Reads.qual
-rwxrwxrwx 1 adminrig lifelabs     1035 Mar 25 23:29 454AllControlMetrics.csv
-rwxrwxrwx 1 adminrig lifelabs     2657 Mar 25 23:29 454AllControlMetrics.txt
-rwxrwxrwx 1 adminrig lifelabs     4607 Mar 25 23:29 454BaseCallerMetrics.csv
-rwxrwxrwx 1 adminrig lifelabs    14518 Mar 25 23:29 454BaseCallerMetrics.txt
-rwxrwxrwx 1 adminrig lifelabs      351 Mar 25 23:23 454DataProcessingDir.xml
-rwxrwxrwx 1 adminrig lifelabs      702 Mar …
Run Code Online (Sandbox Code Playgroud)

linux unix cp linux-networking unix-shell

11
推荐指数
1
解决办法
1万
查看次数