Я запускаю этот скрипт удара:
#!/bin/sh
date +"%Y-%m-%d %H:%M:%S " | tr -d 'n' >> /home/test_a5gh/Pub_IP.txt
curl http://checkip.amazonaws.com?newline -s >> /home/test_a5gh/Pub_IP.txt
cat /home/test_a5gh/Pub_IP.txt
После создания вышеупомянутого файла я поместил его в папку /home/test_a5gh/
и затем я сделал исполняемый файл сценария:
$ sudo chmod u+x testip.sh
Затем для тестирования сценария я работал:
$ ./testip.sh
Однако вывод этой команды производится на 2 строках. Вот пример:
2011-22-33 16:10:27
111.222.333.444
Мне нужен вывод для появления на 1 строке, как это:
2011-22-33 16:10:27 111.222.333.444
Дополнительная информация:
Сценарий взят отсюда.
Вопрос:
Существует ли способ получить этот вывод на 1 строке?
Вот один путь:
#!/bin/bash
mydate=$(date '+%Y-%m-%d %H:%M:%S')
myip=$(curl http://checkip.amazonaws.com?newline -s)
printf '%s %s\n' "$mydate" "$myip" >> /home/test_a5gh/Pub_IP.txt
к вашему сведению, Вам не нужно sudo
к chmod
файлы, которыми Вы владеете в своем собственном корневом каталоге.