GNU/Linux >> Linux Esercitazione >  >> Panels >> Docker

Come rinominare file e directory in Linux

La capacità di modificare i nomi di file e directory è una delle abilità principali di cui ogni utente Linux ha bisogno. Questo articolo continua la serie di articoli di Bash e mostra come utilizzare vari modi come file manager, mv e rinomina utilità in combinazione con i costrutti di ricerca e ciclo bash. Migliora le tue abilità Linux in soli 3 minuti!

Sono disponibili due modi per farlo:

  • Gestione file.
  • Terminale della riga di comando.

Utilizzo del file manager

Uno dei modi più semplici per rinominare file e directory in Linux per i nuovi utenti è usare Midnight Commander.

Midnight Commander – è un file manager basato su console clonato dal famoso Norton Commander.

Per installare Midnight Commander sotto Ubuntu:

$ sudo apt-get update

$ sudo apt-get -y install mc

Per CentOS/Fedora/RHEL, usa un gestore di pacchetti diverso:

$ sudo yum -y install mc

Per avviare Midnight Commander, esegui mc comando.

È necessario utilizzare le frecce della tastiera per spostare il selettore di file. Per passare dalla schermata sinistra a quella destra, devi utilizzare la scheda chiave. Puoi usare anche il mouse, ma sei limitato a selezionare solo i file visibili sullo schermo.

Per rinominare il file o la directory, sposta il cursore sopra di esso e premi F6 . Se hai dimenticato la chiave esatta, usa il mouse per selezionare Sposta/Rinomina dal menu File.

Successivamente, diamo un'occhiata a come possiamo rinominare i file e le directory utilizzando mvrinomina comandi.

comando "mv"

Il mv command ti aiuta a m ov e o rinominare i file e le directory dall'origine alla posizione di destinazione. La sintassi del comando è la seguente:

$ mv [OPTIONS] source destination

La fontedestinazione può essere un file o una directory.

Per rinominare file1.txt in file2.txt utilizzando mv eseguire il seguente comando:

$ mv file1.txt file2.txt

Per modificare il nome della cartella1 directory nella cartella2 , usa il seguente comando:

$ mv folder1 folder2

Rinominare più file contemporaneamente

Il mv l'utilità può rinominare un solo file alla volta, ma puoi usarlo con altri comandi per rinominare più di un file. Questi comandi includono trova e Bash permentre loop.

Ad esempio, immaginiamo di dover modificare l'estensione del file per un tipo di file specifico in una directory. Nell'esempio seguente, rinominiamo tutti i file HTML e cambiamo la loro estensione da html in php .

Ecco l'esempio struttura delle cartelle:

$ tree example
example
├── index.html
├── page1.html
├── page2.html
└── page3.html

0 directories, 4 files

Ora, utilizziamo il seguente costrutto Bash for-loop all'interno dell'esempio directory:

$ cd example

$ for f in *.html; do
    mv "$f" "${f%.html}.php"
done

Qui siamo entrati nell'esempio directory. Successivamente, abbiamo eseguito il mv comando in Bash for-loop (il comando tra forfatto parole chiave).

Ecco cosa sta succedendo:

  • Il ciclo for sta esaminando i file che terminano con .html e inserendo tutti i nomi di file nella variabile f .
  • Quindi mv l'utilità cambia l'estensione di ogni file f da .html file in .php . Una parte dell'espressione ${f%.html} è responsabile della rimozione di .html dal nome del file. Un'espressione completa "${f%.html}.php" aggiungerà .php al nome del file senza .html parte.

Ecco il risultato atteso:

$ ls -l
total 0
-rw-r--r--  1 amaksimov  wheel  0 Dec  5 17:13 index.php
-rw-r--r--  1 amaksimov  wheel  0 Dec  5 17:13 page1.php
-rw-r--r--  1 amaksimov  wheel  0 Dec  5 17:13 page2.php
-rw-r--r--  1 amaksimov  wheel  0 Dec  5 17:13 page3.php

comando "trova"

Utilizzando trova L'utilità è uno dei modi più comuni per automatizzare le operazioni su file e directory in Linux.

Nell'esempio seguente, utilizziamo il trova per raggiungere lo stesso obiettivo e modificare l'estensione del file.

Il trovare l'utilità trova tutti i file che terminano con .html e utilizza il -exec argomento per passare ogni nome di file trovato allo script della shell sh scritto in una riga.

$ find . -depth -name "*.html" -exec sh -c 'f="{}"; mv "$f" "${f%.html}.php"' \;

Nella riga di script sh, impostiamo la variabile f con il valore del nome del file f="{}" , quindi eseguiamo il familiare mv comando. Un punto e virgola viene utilizzato per dividere il comando di set di variabili da mv comando.

comando "rinomina"

In alcuni casi, è più semplice utilizzare la rinomina comando invece di mv . E puoi usarlo con espressioni regolari senza combinarlo con altri comandi Linux.

Ecco la sintassi per rinominare comando:

$ rename [OPTIONS] regexp files

Ad esempio, rinominiamo tutto .php file di nuovo in .html :

$ ls
index.php  page1.php  page2.php  page3.php

$ rename 's/.php/.html/' *.php

$ ls
index.html  page1.html  page2.html  page3.html

Se desideri stampare i nomi dei file che hai selezionato per la ridenominazione, puoi utilizzare il seguente comando:

$ rename -n 's/.html/.php/' *.html
rename(index.html, index.php)
rename(page1.html, page1.php)
rename(page2.html, page2.php)
rename(page3.html, page3.php)

$ ls
index.html  page1.html  page2.html  page3.html

Riepilogo

In questo articolo, hai imparato come modificare i nomi di file e directory in Linux in vari modi. Speriamo che questo articolo sia stato utile. Se è così, per favore, aiutaci a diffonderlo nel mondo.


Docker
  1. Un modo semplice per nascondere file e directory in Linux

  2. Come rinominare i file in Linux

  3. Come eliminare file e directory in Linux dalla riga di comando

  4. Come estrarre i file .gz e .tar.gz in Linux

  5. Come rinominare un file in Linux?

Come rinominare le directory in Linux

Come confrontare e unire file di testo su Linux

Come rinominare uno o più file in Linux

Come rinominare file e directory in Ubuntu 20.04

Come visualizzare e creare file e directory nascosti in Linux

Come copiare file e directory nel terminale Linux