我想用sed这个丑陋的 RE将千位分隔符插入到一个数字序列中sed -e :a -e 's/\(.*[0-9]\)\(\([0-9]\{3\}\)\(,[0-9]\{3\}\)*\(\.[0-9]*\)\)/\1,\2/;ta' [filename]。
有没有更优雅的解决方案?
================================================== ==========
编辑
我刚才省略了一件事:数字可能有小数点。举个例子:
123456.7890
我想要分离 123,456.7890 后的结果
谢谢和最好的问候。
因此,我保留的几乎所有信息都使用纯文本。这些文件已(或将要)与 OSX 和 Linux 上的 shell 脚本、emacs、vim、终端等一起使用。能够使用英文、中文和斯堪的纳维亚字符而不会感到头疼是最理想的。假设性能不是问题,但可移植性和互操作性是问题,utf-8 或 utf-16 是编码的最佳选择吗?如果没有明显更好的选择,那么相关的权衡是什么?
我在运行红帽的服务器上有几个稀疏文件。我想查看文件而不必查看归零字节。当我减少文件时,我看到很多 '@^'s 存在零字节。当我 cat 文件时,没有显示任何归零字节。但是,当我 cat 并将其通过管道传输到 less 时,再次显示归零的字节。
为什么会这样?我如何解决这个问题以使用较少的文件查看文件,并且不显示归零位?
我是 linux 新手,所以如果我的问题有点混乱,我很抱歉。
我想做以下事情:
创建第二个 root 帐户
使用此帐户写入文件
第一个 root 帐户不应该能够编辑这个文件(也没有其他帐户)。
是否可以?
我有大约 10 个 Linux 安装 ISO。我想将它们全部放在 1 个 CD/DVD 上,这样当 CD/DVD 启动时,它会给我一个 GRUB 菜单,询问我要安装哪个 Linux。
我该怎么做呢?如何将 GRUB 安装到 CD 上?
我想用cp复制一个文件,但是,我碰巧输入了rm,文件被删除了。
我怎样才能恢复它?
文件存储在FAT32文件系统的移动硬盘中
我使用的是 Mac OS X
希望有人能帮助我!
我想创建一个名为10的文件夹foo1java,foo2c,foo3python,等。
我试过了,但它创建了太多目录:
mkdir foo{1..3}{java,c,python}
foo1c/ foo1python/ foo2java/ foo3c/ foo3python/
foo1java/ foo2c/ foo2python/ foo3java/
Run Code Online (Sandbox Code Playgroud)
我只想将数字映射到语言:1to java、2to c、3topython等。
我该怎么做呢?
我正在使用以下内容来创建 tgz 文件:
tar zcf - /usr/folder | split -b 30720m - /usr/archive.tgz
Run Code Online (Sandbox Code Playgroud)
现在我得到三个文件:archive.tgzaa、archive.tgzab 和 archive.tgzac
所以我想再次将这三个档案组合成一个 tgz 文件......
cat archive.tgza* | (tar x)
tar: Archive is compressed. Use -z option
tar: Error is not recoverable: exiting now
Run Code Online (Sandbox Code Playgroud)
然后我做了:
cat archive.tgza* | (tar z)
tar: You must specify one of the `-Acdtrux' options
Try `tar --help' or `tar --usage' for more information.
Run Code Online (Sandbox Code Playgroud)
然后最后:
cat archive.tgza* | (tar xz)
Run Code Online (Sandbox Code Playgroud)
工作,但它开始解压缩档案......我怎样才能简单地将它重新加入一个档案?
谢谢 !
我正在linux下用sfdisk创建一个分区。创建分区后,我想创建一个文件系统。
这会因 mkfs.ext3 找不到分区而失败:
echo ",,L" | sfdisk $DEVICE
mkfs.ext3 $PARTITION
Run Code Online (Sandbox Code Playgroud)
但这有效:
echo ",,L" | sfdisk $DEVICE
sleep 1
mkfs.ext3 $PARTITION
Run Code Online (Sandbox Code Playgroud)
我怀疑,在 udev 有机会创建设备节点之前,内核需要一些时间来更新它的内部数据结构,或者我的脚本再次被调度。
如何准确等待设备节点创建完成?对于每个恒定时间,可能有一个系统处于负载状态,而这个时间不够用。
我正在尝试检查大量 zip 文件以确保它包含正确的目录。我所做的是循环所有的 zip 文件,然后unzip用来解压缩并一一检查。但是 CPU 和耗时的问题出现了。我相信如果不解压缩就完成情况会更好。所以有这项工作还有其他更有效的解决方案吗?
linux ×10
shell ×3
unix ×3
bash ×2
macos ×2
arch-linux ×1
archiving ×1
bootloader ×1
compact-disc ×1
dvd ×1
filesystems ×1
grub ×1
gz ×1
linux-kernel ×1
partitioning ×1
regex ×1
root ×1
sed ×1
tar ×1
udev ×1
zip ×1