🐧 [Bash совСты] ΠŸΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ² Π±Π΅Π· Π²Π²ΠΎΠ΄Π° ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ Π΄Π²Π°ΠΆΠ΄Ρ‹ Π² Linux

by itisgood
Π’ этом ΠΊΡ€Π°Ρ‚ΠΊΠΎΠΌ руководствС ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚ΡΡ, ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹, Π½Π΅ вводя ΠΏΠΎΠ»Π½ΠΎΠ΅ имя Π΄Π²Π°ΠΆΠ΄Ρ‹ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСмах Linux.
Как ΠΌΡ‹ всС ΡƒΠΆΠ΅ Π·Π½Π°Π΅ΠΌ, ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ mv для пСрСимСнования Ρ„Π°ΠΉΠ»ΠΎΠ² Π² Linux.
Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ», ΠΊΠΎΠΌΠ°Π½Π΄Π° Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚Π°ΠΊΠΎΠΉ:
$ mv <старый Ρ„Π°ΠΉΠ»> <Π½ΠΎΠ²Ρ‹ΠΉ Ρ„Π°ΠΉΠ»>

ΠŸΠΎΠ·Π²ΠΎΠ»ΡŒΡ‚Π΅ ΠΌΠ½Π΅ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Π²Π°ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€.

$ touch itisgood1.txt
$ mv itisgood1.txt itisgood2.txt

Π’ΠΎΡ‚ ΠΊΠ°ΠΊ ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ»Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ mv Π½Π° Linux.

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Π°Ρ Π²Ρ‹ΡˆΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΡƒΠ΅Ρ‚ Ρ„Π°ΠΉΠ» с ΠΈΠΌΠ΅Π½Π΅ΠΌ Β«itisgood1.txtΒ» Π² Β«itisgood2.txtΒ».

Как Π²ΠΈΠ΄ΠΈΡ‚Π΅, ΠΌΡ‹ Π²Π²ΠΎΠ΄ΠΈΠΌ ΠΈΠΌΠ΅Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ² Π΄Π²Π° Ρ€Π°Π·Π° Π² ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ Π²Ρ‹ΡˆΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π΅.

Однако это Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ.

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π»Π΅Π³ΠΊΠΎ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π² Linux с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ mv, Π½Π΅ вводя ΠΈΠΌΠ΅Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ² Π΄Π²Π° Ρ€Π°Π·Π°, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ простой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ BASH.

Как ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π±Π΅Π· Π΄Π²ΠΎΠΉΠ½ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π° ΠΈΠΌΠ΅Π½ΠΈ Π½Π° Linux

ΠžΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ» ~/.bashrc Π² вашСм любимом Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅:

$ nano ~/.bashrc

Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ строки Π² ΠΊΠΎΠ½Ρ†Π΅ Ρ„Π°ΠΉΠ»Π°:

# Bash Function To Rename Files Without Typing Full Name Twice
function mv() {
  if [ "$#" -ne 1 ] || [ ! -e "$1" ]; then
    command mv "$@"
    return
  fi

  read -ei "$1" newfilename
  command mv -v -- "$1" "$newfilename"
}

Π—Π΄Π΅ΡΡŒ имя Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ bash – mv.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ любоС Π΄Ρ€ΡƒΠ³ΠΎΠ΅ имя.

Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ ΠΈ Π·Π°ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ».

А Π·Π°Ρ‚Π΅ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ измСнСния вступили Π² силу:

$ source ~/.bashrc

ΠžΡ‚Π½Ρ‹Π½Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ имя Ρ„Π°ΠΉΠ»Π° ΠΈ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ», ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅.

$ mv itisgood1.txt

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ клавиши со стрСлками для пСрСмСщСния Π±ΡƒΠΊΠ² ΠΈΠ»ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ Backspace, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ всС Π±ΡƒΠΊΠ²Ρ‹ ΠΈ Π²Π²Π΅Π΄ΠΈΡ‚Π΅ Π½ΠΎΠ²ΠΎΠ΅ имя для Ρ„Π°ΠΉΠ»Π°.

НС Ρ‚ΠΎΠ»ΡŒΠΊΠΎ имя Ρ„Π°ΠΉΠ»Π°, Π²Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π°.

Π­Ρ‚ΠΎ Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½ΠΎ ΠΏΠΎΡ…ΠΎΠΆΠ΅ Π½Π° Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ клавиши F2 ΠΈ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° Π² графичСском интСрфСйсС.

Π”Ρ€ΡƒΠ³ΠΈΠ΅ способы пСрСимСнования Ρ„Π°ΠΉΠ»ΠΎΠ² Π±Π΅Π· Π²Π²ΠΎΠ΄Π° ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ Π΄Π²Π°ΠΆΠ΄Ρ‹


Π•ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ нСсколько Π΄Ρ€ΡƒΠ³ΠΈΡ… способов ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» Π±Π΅Π· нСобходимости Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΠΎΠ»Π½ΠΎΠ΅ имя Π΄Π²Π° Ρ€Π°Π·Π°.

Бпособ 1 – с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ mv

Помимо ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ BASH, здСсь Π΅ΡΡ‚ΡŒ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ простой способ пСрСимСнования Ρ„Π°ΠΉΠ»ΠΎΠ² с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ mv.

Нам Π΄Π°ΠΆΠ΅ Π½Π΅ Π½ΡƒΠΆΠ½Π° функция BASH.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΎΠ΄Π½ΠΎΡΡ‚Ρ€ΠΎΡ‡Π½ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ для быстрого пСрСимСнования Ρ„Π°ΠΉΠ»Π°:

$ mv itisgood{1,2}.txt

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Π°Ρ Π²Ρ‹ΡˆΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π° скопируСт Ρ„Π°ΠΉΠ» с ΠΈΠΌΠ΅Π½Π΅ΠΌ itisgood1.txt Π² itisgood2.txt.

Π’ΠΎΡ‚ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€. Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΡƒΠ΅Ρ‚ IMG_20140210_150415974.jpg Π² IMG_20140210_itisgood.jpg.

$ mv IMG_20140210_{150415974,itisgood}.jpg
Если Π²Ρ‹ Π½Π΅ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ, Π½ΠΎ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΠΌΠ΅Ρ‚ΡŒ Π΄Π²Π΅ ΠΊΠΎΠΏΠΈΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ Ρ„Π°ΠΉΠ»Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ cp, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅:
$ cp itisgood{1,2}.txt
ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Π°Ρ Π²Ρ‹ΡˆΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π° скопируСт содСрТимоС Ρ„Π°ΠΉΠ»Π° itisgood1.txt Π² Ρ„Π°ΠΉΠ» itisgood2.txt.
Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ρƒ вас Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ Π΄Π²Π° Ρ„Π°ΠΉΠ»Π° с ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌ содСрТимым.

ΠœΠ΅Ρ‚ΠΎΠ΄ 2 – ИспользованиС сочСтаний клавиш readline (CTRL + w, CTRL + y ΠΈ CTRL + y)

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ сочСтания клавиш, Ρ‡Ρ‚ΠΎΠ±Ρ‹ быстро ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ».

Π­Ρ‚ΠΈ сочСтания клавиш ΠΏΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ с основными ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ°ΠΌΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

Команда CTRL + w ΠΎΠ±Ρ€Π΅Π·Π°Π΅Ρ‚ послСднСС слово ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, Π° клавиша CTRL + y вставляСт это слово Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π».

Π‘Π½Π°Ρ‡Π°Π»Π° я Π½Π°Π±ΠΈΡ€Π°ΡŽ Β«mv itisgood1.txtΒ».
Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, я наТимаю CTRL + y, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Ρ€Π΅Π·Π°Ρ‚ΡŒ послСднСС слово, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ itisgood1.txt.
Π’-Ρ‚Ρ€Π΅Ρ‚ΡŒΠΈΡ…, я наТимаю CTRL + y, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ послСднСС слово.
НаконСц, я наТимаю CTRL + y Π΅Ρ‰Π΅ Ρ€Π°Π·, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ‚ΠΎ ΠΆΠ΅ слово, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ.

Бпособ 3 – ИспользованиС Β«imvΒ» ΠΈΠ· renameutils

Renameutils – это Π½Π°Π±ΠΎΡ€ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Ρ… для Π±ΠΎΠ»Π΅Π΅ быстрого ΠΈ простого пСрСимСнования Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ².

Renameutils содСрТит срСди ΠΏΡ€ΠΎΡ‡ΠΈΡ… ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Β«imvΒ».

ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ имя Ρ„Π°ΠΉΠ»Π°.

$ imv itisgood1.txt
БистСма ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π²Ρ‹ΡˆΠ΅ имя Ρ„Π°ΠΉΠ»Π° Π² Π’Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π΅.
ΠžΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ имя Ρ„Π°ΠΉΠ»Π° Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Π²Π°ΠΌ нравится, ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ENTER, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ.
Β 

You may also like

2 коммСнтария

Alex 02.06.2020 - 16:17

Бпасибо!

Reply
itisgood 02.06.2020 - 17:27

ВсСгда Ρ€Π°Π΄Ρ‹! πŸ™‚

Reply

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ для itisgood Cancel Reply