1

Я работаю на Mac, и команды cp и mv убивают меня из-за того, что они копируют содержимое каталога, если присутствует косая черта. Меня укусило не раз, когда я использовал завершение табуляции, чтобы указать каталог, который я хочу скопировать.

Я заметил, что у zsh есть удобная функция, которая удаляет косую черту, если она не нужна после нажатия клавиши пробела или ввода. Есть ли способ заставить bash имитировать это поведение?

1 ответ1

0

Завершение Bash не может захватить пробел или ввести ключ. Это только для клавиши табуляции.

На ваш вопрос, я думаю, вы можете написать небольшой скрипт-обертку, чтобы убрать косую черту перед передачей командной строки в реальные программы cp/mv.

Например, ~/bin/my_mv:

#!/bin/bash

argv=("$@")
last="${argv[$# - 1]}"
last="${last%/}"
argv[$# - 1]="$last"

mv "${argv[@]}"

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .