Как заменить пробел на дефис используя tr ?

Для замены пробелов на дефисы в строке с помощью утилиты tr, вы можете использовать следующую команду в bash:
	
#!/bin/bash

string="This is a string with spaces"
new_string=$(echo "$string" | tr ' ' '-')
echo "$new_string"
В этой команде мы сохраняем исходную строку в переменной string. Затем мы используем команду echo для передачи строки ввода в tr. Утилита tr заменяет все пробелы ' ' на дефисы -. Результат замены сохраняется в переменной new_string. В конце мы выводим значение переменной new_string с заменой пробелов на дефисы. Результат:
	
This-is-a-string-with-spaces
Флаг ' ' в команде tr указывает символ, который нужно заменить (пробел), а - указывает на символ, который будет использован в качестве замены (дефис). Если вы хотите заменить другие символы, просто измените их в соответствии с вашими потребностями.

Если вы хотите заменить пробелы на дефисы в файле, вы можете использовать команду tr с перенаправлением ввода и вывода:
	
tr ' ' '-' < file.txt > new_file.txt
В этом случае команда tr считывает контент из file.txt, заменяет пробелы на дефисы и записывает результат в new_file.txt. Оригинальный файл file.txt остается без изменений.