Должен колотить вывод сценария на одной строке - завихрение и>> продолжает 2 линии

Я запускаю этот скрипт удара:

#!/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 строке?

1
задан 25 June 2016 в 03:56

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 файлы, которыми Вы владеете в своем собственном корневом каталоге.

2
ответ дан 7 December 2019 в 13:43

Другие вопросы по тегам:

Похожие вопросы: