Если файл не заканчивается новой строкой, просто необходимо обратиться к последней команде замены (используйте -i
флаг sed
изменить оперативный файл):
$ sed '$!N;$s/\n/,/' dna.data
a,b,c,d,e,f
1,2,3,4,5,6,7,8,9,0,1,2
0,9,8,7,6,5,4,3,2,1,0,9
Если файл заканчивается новой строкой, можно использовать редактора ex
:
$ ex dna.data
$-1s/\n/,/
1,2,3,4,5,6,7,8,9,0,1,2
x
или в одной строке
echo -e '$-1s/\\n/,/\nx' | ex dna.data
Я не уверен, почему, Вы выполняете 3 команды, когда первый - все, в чем Вы нуждаетесь:
$ sync; echo 3 > /proc/sys/vm/drop_caches
Это сделает следующие 3 вещи: свободный pagecache, dentries и inodes. Используя 1 только освобождает pagecache, в то время как 2 освобождает dentries + inodes.
Вы, вероятно, испытываете некоторую странную проблему синхронизации где:
Просто вы должны попробовать это
echo 3> / proc / sys / vm / Drop_Caches
Но вы тоже работаете со мной же ситуацию, но работает нормально
[root @ i-id ~] # w
20:56:35 Вверх 4:03, 2 пользователя, среднее значение нагрузки: 0,00, 0,00, 0,111
Пользователь TTY от Login @ Idle JCPU PCPU Что
CORT TTY4 - 16:55 3: 48 млн 0,25с 0,25с -bash
root pts / 0 192.168.1.42 20:55 0,00с 0,20с 0,00с
[root @ i-id ~] # cat / etc / redhat-release
Centos Release 6.5 (финал)
[root @ i-id ~] # sy
Sync Sysctl Sys-unconfig
[root @ i-ids ~] # синхронизация; echo 3> / proc / sys / vm / drop_caches
[root @ i-ids ~] # синхронизация; echo 2> / proc / sys / vm / drop_caches
[root @ i-ids ~] # синхронизация; echo 1> / proc / sys / vm / drop_caches
[root @ i-ids ~] # синхронизация; echo 3> / proc / sys / vm / drop_caches
Можете ли вы опубликовать наш темальный вывод здесь из ввода команды для вывода
Этот должен работать независимо от распределения Linux, вы работаете. Вам нужно покрыть перенаправление при запуске Sudo.
$ sudo sh -c "$(which echo) 3 > /proc/sys/vm/drop_caches"
Кредиты: https://unix.stackexchange.com/a/148442/101951
(Я добавил , какое echo
часть, хотя)