Самый легкий должен, вероятно, работать xset q
или xdpyinfo
, перенаправление вывода к /dev/null
так, чтобы это не рвало на Вашем дисплее.
Править:
Это выполнит экранную заставку, затем уничтожит ее (измените путь и задержитесь по мере необходимости):
/usr/libexec/mate-screensaver/popsquares & { sleep 0.01 ; kill $! ; }
Если Вы выполняете следующую команду:
$ dos2unix <file>
<file>
будет иметь все символы ^M разделенными. Если Вы хотите уехать <file>
неповрежденный, затем просто выполненный dos2unix
как это:
$ dos2unix -n <file> <newfile>
Если необходимо сделать их как часть цепочки команд через канал, можно использовать любое количество инструментов такой как tr
, sed
, awk
, или perl
сделать это.
TR
$ java -jar test.jar | tr -d '^M' >> test.log
sed
$ java -jar test.jar | sed 's/^M//g' >> test.log
awk
$ java -jar test.jar | awk 'sub(/^M/,"")' >> test.log
жемчуг
$ java -jar test.jar | perl -p -e 's/^M//g' >> test.log
При вводе ^M
обязательно введите его одним из следующих способов:
\r
).\015
).\x0D
). ^M
часть того, как конец строк завершается на платформе Windows. Каждый конец строки завершается с символом возврата каретки, сопровождаемым символом перевода строки.
В системах Unix конец строки завершается просто символом перевода строки.
0x0A
в шестнадцатеричном числе, также записанном как \n
.0x0D
в шестнадцатеричном числе, также записанном как \r
.Вы видите их при передаче по каналу вывода к инструменту такой как od
или hexdump
. Вот файл примера со строкой, завершающей возвраты каретки + символы перевода строки.
$ cat sample.txt
hi there
bye there
Вы видите их с hexdump
как \r
+ \n
:
$ hexdump -c sample.txt
0000000 h i t h e r e \r \n b y e t h
0000010 e r e \r \n
0000015
Или как их шестнадцатеричное 0d
+ 0a
:
$ hexdump -C sample.txt
00000000 68 69 20 74 68 65 72 65 0d 0a 62 79 65 20 74 68 |hi there..bye th|
00000010 65 72 65 0d 0a |ere..|
00000015
Прокручивание этого sed 's/\r//g'
:
$ sed 's/\r//g' sample.txt |hexdump -C
00000000 68 69 20 74 68 65 72 65 0a 62 79 65 20 74 68 65 |hi there.bye the|
00000010 72 65 0a |re.|
00000013
Вы видите это sed
удалил 0d
символ.
Да можно использовать vim
сделать это. Можно или установить fileformat
при установке в энергии, которая будет иметь эффект преобразования файла как, мы делали выше, или можно изменить формат файла в vim
посмотреть.
изменение формата файла
:set fileformat=dos
:set fileformat=unix
Можно использовать краткую нотацию также:
:set ff=dos
:set ff=unix
Кроме того, можно просто изменить формат файла представления. Этот подход является неразрушающим:
:e ++ff=dos
:e ++ff=unix
Здесь Вы видите, что я открываю наш ^M
файл, sample.txt
в vim
:
Теперь я преобразовываю формат файла в представлении:
Вот то, на что похоже при преобразовании в unix
формат файла:
Пихните файл через dos2unix
зафиксировать окончания строки.
Или, используйте один из них:
sed 's,\r$,,'
tr -d '\r'
Необходимо исправить программу для вызова isatty()
и если stdout не является tty, то не производите ^M.
Удаление ^ M без специальных знаков:
$ tr -d '\015' <file1 >file2
$ mv file2 file1