2 / 2 / 3
Регистрация: 31.05.2014
Сообщений: 23
1

Поменять местами первую и последнюю строки

18.09.2015, 20:43. Показов 4529. Ответов 3
Метки нет (Все метки)

Поменять местами первую и последнюю строки, Linux (Unix)
запрос в одну строку, пыталась ничего не выходит.
1
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.09.2015, 20:43
Ответы с готовыми решениями:

Поменять местами первую и последнюю строку файла
С помощью команды awk поменять местами первую и последнюю строку в файле BEGIN { nlines=0; } /*...

Поменять местами первую первую и последнюю строки матрицы S(4,4)
Поменять местами первую первую и последнюю строки матрицы S(4,4)

Поменять первую и последнюю строки матрицы местами
Нужно написать программу которая меня меняет первую и последнюю строки матрицы местами На сомом (...

Поменять в матрице первую и последнюю строки местами
Помогите составить программу и блок схему к заданной задачи)

3
528 / 431 / 159
Регистрация: 25.11.2014
Сообщений: 1,662
18.09.2015, 21:37 2
Какой язык? Первую и последюю строки чего?
0
2 / 2 / 3
Регистрация: 31.05.2014
Сообщений: 23
18.09.2015, 21:38  [ТС] 3
в консоли Unix. строки в файле, например new.txt
str1
str2
str3
str4
1
Модератор
Эксперт NIX
2792 / 2035 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
19.09.2015, 14:53 4
Лучший ответ Сообщение было отмечено Katerina101010 как решение

Решение

Будем надеяться что у Вас не древняя система
Bash
1
sed -zr 's/([^\n]*\n)(.*\n)([^\n]*\n)/\3\2\1/' new.txt
а то придется так
Bash
1
sed '1{h;d};$!{H;d};p;g;s/\([^\n]*\)\n\(.*\)/\2\n\1/' new.txt
Bash
1
awk 'END{print;print mid first}NR<2{first=$0}NR>2{mid=mid k "\n"}{k=$0}' new.txt
Добавлено через 13 минут
Неправильный способ в части многократного обращения к файлу, но тем не менее работающий и подходящий для очень больших файлов:
Bash
1
tail -1 6; tail -n +2 6 | head -n -1; head -1 6
Добавлено через 13 минут
Или можно на чистом bash с использованием массива
Bash
1
mapfile -t my <new.txt; printf "%s\n" "${my[-1]}" "${my[@]:1:$((${#my[*]}-2))}" "${my[0]}"
Добавлено через 2 часа 15 минут
Можно еще так
Bash
1
sed '${p;g;s/^\n//;T;h;D;:;P};H;d' new.txt
или
Bash
1
sed '${p;g;s/\n.*//;x;/\n/D;P};H;1h;d' new.txt
Добавлено через 25 минут
или
Bash
1
sed '${p;g;/^\n/!{P;d};s///;h};H;D' new.txt
5
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.09.2015, 14:53
Помогаю со студенческими работами здесь

Поменять местами первую и последнюю строки матрицы
Дана матрица A. Нужно: 1) Поменять местами 1ю и последнюю строки матрицы. 2)Подсчитать s для...

Поменять местами первую и последнюю строки матрицы S(4,4)
Поменять местами первую и последнюю строки матрицы S(4,4)

Подпрограмма поменять местами первую и последнюю строки
Написать функцию, которая в матрице Y(M,N) меняет местами L-ю и k-ю строки (k&lt;M, L&lt;M). C помощью...

Поменять местами первую и последнюю строки матрицы.
Прошу Вашей помощи так как сама в Паскале очень плохо разбираюсь.:wall:Заранее спасибо! Вот...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru