Почему awk-скрипт перетасовывает последние два поля?

, как я видел в первом абзаце, чтобы стать root, вы вводите su -, который повторно инициализирует вашу среду при смене пользователя. Таким образом, становясь пользователем root, вы меняете переменную окружения PWDи, таким образом, изменяете текущий каталог, в котором находитесь, и он становится /root.

Есть два способа решения вашей проблемы

  • Первый:
    используйте suвместо su -, вы будете в том же каталоге, что и ваш обычный пользователь. Таким образом, после того, как вы станете пользователем root, вы сможете ввестиrpm -ivh jre-8u144-linux-x64.rpm

  • Второй:
    когда вы находитесь в правильном каталоге со своим обычным пользователем, вы вводите pwdи где-то отмечаете этот путь. Должно быть что-то вроде /home/user/something Затем вы набираете su -и затем выполняете rpm -ivh /home/user/something/jre-8u144-linux-x64.rpm. Это должно сработать.

Оба они должны работать, хотя я бы рекомендовал второй.

2
09.07.2019, 16:05
1 ответ

Просто сделайте следующее, не нужно массива или сложного кода:

$ awk '{ OFS=" Time[s] "; $1="ID"; print; exit }' infile

чтобы присвоить результат переменной оболочки:

$ column_headers=$(awk '{ OFS=" Time[s] "; $1="ID"; print; exit }' infile)
$ echo "$column_headers"
ID Time[s] A_in Time[s] B_in Time[s] C_in Time[s] D_in Time[s] E_in

или, если вы не знаете название своего первого заголовка поля, сделайте следующее:

$ awk '{ OFS=" "$1" "; $1="ID"; print; exit }' infile
ID Time[s] A_in Time[s] B_in Time[s] C_in Time[s] D_in Time[s] E_in
0
16.12.2020, 19:12

Теги

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