Bash skript pro stejné řádky od 2 rozdílných souborů

0

Otázka

Já jsem například soubor s názvem uživatele, a to je patří

user1
user2
user3

a soubor s názvem newusers včetně:

newuser1
newuser2
newuser3

a teď jsem třeba bash skript pro user1 a newuser1 a udělat nějaký příkaz, například 'mv user1 na newuser1' a atd. něco jako tohle, ale to není práce pro mě:

user=cat users
newuser= cat newusers

for u in user ; for n in newuser; do mv $u $n done; done
bash centos linux sh
2021-11-23 07:21:43
2

Nejlepší odpověď

2

Pokud jste hnízdo dvou smyček, dostanete "počet uživatelů" * "počet newusers" move operací. Ale chcete pouze "počet uživatelů" move operací.

Čisté Bash:

#! /bin/bash

exec {users}<users
exec {newusers}<newusers

while true; do
  read user <&$users || exit
  read newuser <&$newusers || exit
  mv "$user" "$newuser"
done
2021-11-23 08:19:36

To funguje, než hodně. Ušetříte svůj čas.Přeji hezký den.
Samir Ahmadli
1

Pokud jsou soubory v odpovídající pořadí, a stejný počet řádků:

tab=$(printf '\t')

paste users newusers |
while IFS=$tab read user newuser; do
    echo "move $newuser $user"
done

To funguje v bashi nebo sh. Můžete vytvořit pomocí příkazu odpovídající řádky. Čáry, nemůže již obsahovat karty.

2021-11-23 08:39:51

V jiných jazycích

Tato stránka je v jiných jazycích

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................