Get the App
SLTechnology News&Howtos  ›  Servers  › 

Batch file renaming in linux and unix

Shulou Source: shulou.com Published: 2022-06-03 08:36:13 09月21日 Update

I'm going to remove the suffix .gz from the gzip compressed file:

Method 1:

[root@test mysql] # touch test1 test2 test3

[root@test mysql] # gzip *

[root@test mysql] # ls

Test1.gz test2.gz test3.gz

[root@test mysql] # ls-l * .gz | xargs rename .gz ""

[root@test mysql] # ls-l * .gz

Ls: * .gz: there is no such file or directory

[root@test mysql] ls

Test1 test2 test3

This method in HP-unix will prompt xargs parameter rename is invalid, what to do, don't worry, please see the next method.

Method 2:

[root@test mysql] # touch test1 test2 test3

[root@test mysql] # gzip *

[root@test mysql] # ls

Test1.gz test2.gz test3.gz

[root@test mysql] # ls-l * .gz | awk'{oldname=$9;sub (/ .gz $/, "); print oldname,$9}'| xargs-N2 mv

[root@test mysql] # ls * .gz

Ls: * .gz: there is no such file or directory

[root@test mysql] # ls

Test1 test2 test3 note: the argument-N2 passed to xargs here is the key, instructing xargs to take two Field from the standard input at a time and pass it to the command to be executed as a parameter. Otherwise, it will be fetched from the standard input until the command line just does not exceed the LINE_MAX. Ok, the second method solves the problem of batch file renaming in hp-unix

Tags: Method file parameter standard directory input two key suffix command what to do I want instruction please see question prompt Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno Docker Shulou Tech Info Xiaomi macOS Shulou Information