Questions tagged «cut»

对于与剪切有关的问题,请使用过滤程序来提取输入的每一行的字段或列。使用此标签可解决有关cut本身的问题或有关使用cut实用程序引起的问题的问题。

2
是否知道utf的coreutils?
cut今天使用时,我发现它不会将UTF-8字符视为字符,而是3个字符,因为它的长度为3个字节。 对于许多工具来说,这似乎通常是正确的。 是否有支持coreutilsUTF-8的版本? 我的locale输出: LANG=en_US.UTF-8 LC_CTYPE="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8" LC_COLLATE="en_US.UTF-8" LC_MONETARY="en_US.UTF-8" LC_MESSAGES="en_US.UTF-8" LC_PAPER="en_US.UTF-8" LC_NAME="en_US.UTF-8" LC_ADDRESS="en_US.UTF-8" LC_TELEPHONE="en_US.UTF-8" LC_MEASUREMENT="en_US.UTF-8" LC_IDENTIFICATION="en_US.UTF-8" LC_ALL= 这是什么时候cut不起作用 echo 哈哈 | cut -c 2- ��哈 正确的输出应该是 哈 如果cut -c使用多字节字符。
16 unicode  coreutils  cut 

3
不能在UTF-8中使用`cut -c`(`--characters`)吗?
该命令cut具有一个-c处理字符的选项,而不是带有选项的字节-b。但这似乎在en_US.UTF-8区域设置中不起作用: 第二个字节给出第二个ASCII字符(在UTF-8中编码相同): $ printf 'ABC' | cut -b 2 B 但不会在UTF-8语言环境中给出三个希腊非ASCII字符中的第二个: $ printf 'αβγ' | cut -b 2 � 没关系-这是第二个字节。 因此,我们改为看第二个字符: $ printf 'αβγ' | cut -c 2 � 看起来坏了。 通过一些实验,结果表明范围3-4显示了第二个字符: $ printf 'αβγ' | cut -c 3-4 β 但这与字节3到4相同: $ printf 'αβγ' | cut -b 3-4 β 因此,对于UTF-8,-c最多不会超过-b。 我希望语言环境设置不适用于UTF-8,但是相比之下,它wc可以按预期工作; …

7
在单个命令中组合2个不同的切割输出?
我有一个如下文件: 1234 ABCD EFGH 我想将其转换为以下内容: 2341 BCDA FGHE 实际文件有4,000个字,因此我想以一种有效的方式做到这一点。我尝试使用命令cut -c 2-4,1 file.txt,但是它产生与输入相同的确切输出。我当时想可以使用3种不同的命令: cut -c 1 file.txt > temp1.txt cut -c 2-4 file.txt > temp2.txt // combine the two with paste or pr ...但是我更希望使用一个命令,因为我需要对它进行几次修改并稍作修改,因此运行一个命令比每次运行3个命令更容易出错。 有什么方法可以将2个cut语句组合为一个吗?就像是: cut -c 1 file.txt | pr (cut -c 2-4 file.txt) 还是有更好的方法来做到这一点?

5
从文本文件中剪切第2列
我的文本文件没有分隔符来指定分隔符而只是空格,我如何切出第2列以输出文件, 39 207 City and County of San Francisc REJECTED MAT = 0 78 412 Cases and materials on corporat REJECTED MAT = 0 82 431 The preparation of contracts an REJECTED MAT = 0 所以我需要的输出是 207 412 432

3
在最后一个定界符上剪切字符串
我有一个类似的文件名a.b.c.txt,我希望将此字符串拆分为 string1=a.b.c string2=txt 基本上我想分割文件名及其扩展名。我用过,cut但它分裂为a,b,c和txt。我想剪切最后一个定界符上的字符串。 有人可以帮忙吗?
14 shell  cut 

3
在Bash中动态修剪stdout线宽
最近,我一直在试验该ps命令,有时长路径会绕到下一行(或两行)并使其难以阅读。我想将ps输出传递到另一个程序中,以将输出限制x为字符数。 这是我到目前为止所拥有的,但是它并不正确: ps aux | cut -c1-$(stty size | cut -d' ' -f2) $(stty size | cut -d' ' -f2)计算结果为167,但似乎不是有效的输入cut。 有没有一种方法可以使这种语法在bash中工作?
9 bash  shell  stdout  cut 

6
抓取文件的某些内容
因此,我知道存在解决此问题的工具,因为我已经听说过它们,但我不知道它们是什么。 我想做类似过滤掉所有数据的事情,但是/ etc / passwd中的用户名。 例如,我想从以下文件中获取user1,user2和user3。在这种情况下,逻辑可以是“将文本限制为文件每一行的第一个':'。 user1:x:1:4 user2:x:2:5 user3:x:3:6 输出为: user1 user2 user3
9 files  sed  awk  cut 

1
如何缓冲切割?
我只想从我的邮件日志文件中获取以“ @ xyz.nl”结尾的电子邮件地址。为此,我要做: # tail -f /var/log/mail.log | grep --i --line-buffered "@xyz.nl" | cut -d '@' -f 1 | cut -d '<' -f 2 用grep进行--line-buffered是必需的,因为否则它将被缓冲,因为管道不被视为终端。Grep将输出以下行: Aug 29 11:56:01 localhost postfix/smtp[4124]: 05491500123: to=<someone@xyz.nl>, relay=123.456.123.456[123.456.123.456]:25, delay=2, delays=0.4/0/0.4/1.2, dsn=2.0.0, status=sent (250 2.0.0 u7T9twxN074009 Message accepted for delivery) 然后,第一个切割将使: Aug 29 11:56:01 localhost postfix/smtp[4124]: …
8 pipe  cut 
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.