怎么做逆切?

win*_*ina 4 csh cut

我在这方面还是新手。请问,如何逆切?

例子;

./24feb/frfr
Run Code Online (Sandbox Code Playgroud)

我想在 cut 命令之后,结果将是./feb/frfr.

怎么做?

Sté*_*las 9

% echo ./24feb/frfr | cut -c 1-2,5-
./feb/frfr
Run Code Online (Sandbox Code Playgroud)

这将是cut -c 3-4,即所有输出字符(字节与GNU的当前版本cut的每一行的除第三和第四)。

的 GNU 实现cut也有一个--complement选项:

cut --complement -c 3-4
Run Code Online (Sandbox Code Playgroud)

要删除第一个十进制数字序列,您可以sed改用:

sed 's/[0-9]\{1,\}//'
Run Code Online (Sandbox Code Playgroud)

要删除它,仅当它位于第 3 位时:

sed 's/^\(..\)[0-9]*/\1/'
Run Code Online (Sandbox Code Playgroud)

或者非常明确地说明应该触发删除的模式:

sed 's|^\(./\)[0-9]*\([[:lower:]]\{3\}/\)|\1\2|'
Run Code Online (Sandbox Code Playgroud)

那只是<0-or-more-digits>在匹配的行中删除了:./<0-or-more-digits><3-lowercase-letters>/<anything>