标签: command

“ifconfig”和“ip”命令之间的区别

我阅读了一些关于“ifconfig”命令的文章/教程,其中大部分都包含一个通用语句 -

“ifconfig 已被 ip 命令弃用”

并建议学习ip命令。但是他们都没有解释“ip”命令如何比“ifconfig”更强大。

它们之间有什么区别?

linux networking ip command

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

使用 dd 将 1TB 磁盘克隆到 1.2TB 磁盘时出现“设备上没有剩余空间”

我正在尝试使用以下dd命令将远程 xfs 磁盘克隆到另一个位置。

ssh root@source_ip  "dd if=/dev/vda2 bs=16M conv=noerror,sync status=progress " | sudo dd of=/dev/nvme1n1 bs=16M conv=noerror,sync status=progress
Run Code Online (Sandbox Code Playgroud)

但是,我收到以下错误消息

828895133696 bytes (829 GB) copied, 39610.432258 s, 20.9 MB/s
1288490188800 bytes (1.3 TB) copied, 64529.849170 s, 20.0 MB/s
dd: error writing '/dev/nvme1n1': No space left on device
Run Code Online (Sandbox Code Playgroud)

源盘有 1TB,目标盘有 1.2TB。

谁能帮助解释为什么在这种情况下不能执行磁盘到磁盘克隆?谢谢!

我想尝试从源磁盘恢复已删除的文件,但我不确定 DD 是否是这种情况下唯一正确的工具。

linux filesystems dd command

20
推荐指数
3
解决办法
6104
查看次数

使用 mv 命令将文件从一个文件夹移动到另一个文件夹 - 奇怪的例子

我正在从surrey.ac.ukUNIX 初学者教程中学习 unix 命令,那里我发现了一种移动文件的奇怪方法。特别是,我在主目录中有文件夹 unixstuff,在 unixstuff 中有文件夹备份和文件 Caiti.txt 和 Caiti.bak。

根据上面的链接,要将 Caiti.bak 文件从 unixstuff 移动到备份,我必须确保当前目录是 unixstuff 并且我必须运行以下命令:

mv Caiti.bak backups/.
Run Code Online (Sandbox Code Playgroud)

请你解释一下这些/.字符的含义吗?点表示当前目录(在本例中为 unixstuff)。如果我运行命令:

mv Caiti.bak backups
Run Code Online (Sandbox Code Playgroud)

无论如何它都有效。

command mv syntax

20
推荐指数
1
解决办法
1804
查看次数

执行函数参数提供的命令

我正在尝试在 bash 脚本中创建一个函数方法,该脚本执行由参数提供给该方法的命令。

意思是这样的:

special_execute()
{
    # Some code

    # Here's the point where the command gets executed
    $@

    # More code
}

special_execute echo "abc"
Run Code Online (Sandbox Code Playgroud)

我已经尝试过我$@"$@"$*"$*"我怎么能这样做呢?

bash parameter function command bash-script

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

是否有类似“时间”的东西也记录 I/O 和 CPU?

我可以非常快速地监视进程的运行时间time

x@y ~ $ time foo

real        0m14.299s
user        0m4.770s
sys         0m0.440s
Run Code Online (Sandbox Code Playgroud)

有没有办法可以获取记录到 STDOUT 的参数的 I/O 和 CPU 使用率的相同数据?一个简单的命令或实用程序time是理想的,我只传递我想要运行的东西的参数:

x@y ~ $ stats foo

wallclock runtime     0m14.299s
I/O reads             290,420 KB
I/O writes            239,429 KB
peak CPU usage        18.62%
mean CPU usage        1.44%
# etc.
Run Code Online (Sandbox Code Playgroud)

statistics time command time-utility

19
推荐指数
1
解决办法
3250
查看次数

在连字符后获取字符串的最后一部分

是否有一个简单的命令行来提取由连字符分隔的字符串的最后一部分?例如,我想123foo-bar-123.

command-line sed awk string command

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

如何在bash中将带有值的字符串作为命令运行?

这是我的小 bash 脚本片段。

i=5
command='echo $i'
$command
Run Code Online (Sandbox Code Playgroud)

我希望这个脚本打印,5即,我希望它运行 echo 并打印 5。但它一直在打印$i。那么我该如何解决这个问题呢?

bash string shell-script command

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

如何将文件更改为目录?find+mv 后文件丢失

我有一个包含大约 2000 个文件的目录。
我运行以下命令将这 2000 个文件移动到目标目录中:

find /opt/alfresco \
        -type f \( -iname \*.pdf -o -iname \*.xml \) \
        -exec mv {} /opt/alfresco/archived/2020-01-07  \; > /opt/alfresco/scripts/move.log
Run Code Online (Sandbox Code Playgroud)

但是,我忘了/在目标路径的末尾附加一个。所以上面的命令所做的是,它创建了一个带有名称的文件,2020-01-07并向其中写入了一些现在不可读的二进制内容。我的 2000 个文件不见了。此2020-01-07文件的大小为 220 KB。但那 2000 个文件的总大小约为 1 GB。

有什么办法可以恢复那 2000 个文件吗?或者我可以通过什么方式将此文件转换2020-01-072020-01-07我的数据返回的目录?

linux find data-recovery command mv

17
推荐指数
1
解决办法
2529
查看次数

如何在只有长选项的 bash 命令行中使用 getopt?

getoptbash 命令行中有一个命令。getopt可以与短选项(例如getopt -o axby "$@")一起使用,并且可以与短选项和长选项(例如getopt -o axby -l long-key -- "$@")一起使用,但现在我需要长选项(即根本不存在短选项),但是命令getopt -l long-key -- "$@"--long-key正确解析选项。那么如何使用只有长选项的getopt命令呢?或者这是不可能的还是只是命令的错误?getopt

shell command

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

日期 - 无法返回超过 115 年或无法进入未来 5879565 年

    \n
  • 时区 = CEST
  • \n
  • 日期(GNU coreutils)8.32
  • \n
\n
date -d "115 years ago"\nDi 11. Aug 13:37:54 CET 1908\n
Run Code Online (Sandbox Code Playgroud)\n
date -d "116 years ago"\ndate: invalid date \xe2\x80\x98116 years ago\xe2\x80\x99\n
Run Code Online (Sandbox Code Playgroud)\n
\n

问题

\n
    \n
  1. 是否有可能回到115 years过去或未来5879565 years
  2. \n
  3. 为什么会发生这种情况并引发错误?这些奇数从何而来?
  4. \n
  5. 为什么date -d "200 years ago 14 Mar "突然就可以工作了呢?
  6. \n
\n

date timestamps command date-utility

16
推荐指数
3
解决办法
2976
查看次数