Как удалить текст с начала каждой строки и вставить его в конец каждой строки в терминале

У меня длинный список чисел и значений, которые выглядят примерно так:

100 value1 value2 

В этом списке около 150 строк, и я хочу переместить каждый номер в конец значений, чтобы он выглядел так:

 value1 value2 100 

Я попытался использовать эту команду для выполнения задания:

 awk -F: '{print $2 $3 $1}' ~path/to/file.txt 

но он просто печатает все в файле

 100 value1 value2 101 value3 value4 102 value5 value6 

Пожалуйста помоги!

Заранее спасибо!

2 Solutions collect form web for “Как удалить текст с начала каждой строки и вставить его в конец каждой строки в терминале”

На самом деле ты был близок. 🙂

Попробуйте использовать: awk '{print $2,$3,$1}' filename > output_file

И проверьте его с помощью: cat output_file

Использование awk :

 awk '{ num = $1;$1=""; sub(/^ /,""); print $0,num; }' ~path/to/file.txt 

Это позволяет использовать любое количество столбцов. Объяснение:

  • Сохраните первый столбец в переменной «num», а затем установите его в ничто (т.е. «»)
  • Удалите лишнее пространство между первыми двумя столбцами (используя подпункт)
  • Распечатать
    • $ 0 – вся строка
    • "num" исходный первый столбец

Вы также можете использовать sed :

 sed 's/\([0-9]\+\) \(.*\)/\2 \1/' ~path/to/file.txt 
  • сортировать файл на основе одного столбца и группы другим столбцом
  • Разбиение последовательности на фиксированную ширину
  • Regex awk для интерфейса Cisco
  • Как я могу удалить пятое слово каждой строки в файле?
  • Ошибка сравнения файлов - awk
  • Увеличение числового рисунка в файле
  • Как сравнить 2 файла с общими столбцами, а затем получить выходной файл с столбцами из каждого файла
  • Вывод команды parse
  • Простая функция обертки awk или псевдоним
  • Как программно определить вкус awk (например, gawk vs nawk)
  • Как я могу удалить поле nth в mth с помощью команды awk?
  • Linux и Unix - лучшая ОС в мире.