Как да се справя с предаването на имена на файлове с интервали в Bash



Опитайте Нашия Инструмент За Премахване На Проблемите

Linux има черупка по подразбиране Bash (известна още като Bourne shell) за изпълнение на команди за системата. Повечето програмисти предпочитат bash пред cmd поради гъвкавостта и мощния интерпретатор на командния ред, който bash предоставя. Повечето потребители обаче все още ще имат проблеми, докато се опитват да се справят с предаването на имена на файлове с интервали в bash. Това е така, защото интервалите не се считат за еднакви в bash, както в имената на файлове.



Файлове с интервали в името



Защо името на файла с интервали не се разпознава от Bash?

В Bash, ако въведете няколко думи без бягство знак () или котировки , ще разгледа всички думи като аргументи. Това важи за всички операции, независимо дали променяте директорията с „ CD „Или опит за достъп до файлове с„ котка ‘Команди. Всичко, което напишете след използването им, ще се счита за аргумент. Например:



cat файл name.txt

Изпълнение на командата, без да се използва изходен знак или кавички

Забележка : Името на файла ви може да е всичко, но за тази статия ще използваме „ име на файл.txt ' като пример.

Тук ' котка ‘Команда ще разгледа файл и име като два аргумента, а не като един аргумент. Ако обаче използвате изходен знак или цитати, тогава bash shell ще разгледа това като единичен аргумент, който ще бъде „ име на файл.txt '.



Име на файл с интервали в Bash

Има малко методи, които могат да се използват за интервалите в името. Най-добрата практика е избягването на интервали за имена на файлове в бъдеще. Един прост метод ще бъде да преименувате файла, до който се опитвате да осъществите достъп и да премахнете интервалите. Някои други методи използват единични или двойни кавички върху името на файла с интервали или използват символа за бягство () точно преди интервала. Ще предоставим методи с приложни примери, за да ви покажем как работи.

Метод 1: Използване на единични и двойни кавички

  1. Задръжте Ctrl + Alt и натиснете т да отвориш Терминал .
  2. Сега променете директорията на мястото, където се намира файлът.
    (можете също плъзнете и изпускайте файлът в терминала след командата ‘ котка ‘, Което автоматично ще постави цитати в пътя на файла / директорията)

    cd работен плот

    Промяна на директория

    Забележка : Работният плот може да бъде променен на мястото, до което се опитвате да влезете.

  3. Въведете следната команда, за да прочетете текстов файл с интервали в името:
    cat 'име на файл.txt'

    или

    cat 'име на файл.txt'

    Използване на кавички за избягване на интервали при грешка в името

  4. Единичните и двойните котировки ще доведат до същото. В някои случаи трябва да опитате и двете и да видите кой работи.

Метод 2: Използване на символ за бягство от реакцията

  1. Задръжте Ctrl + Alt и натиснете т да отвориш Терминал .
  2. Променете директорията на мястото, където се намира файлът, като използвате следната команда.
    cd работен плот

    Забележка : Поставете името на местоположението си вместо Desktop.

  3. Сега въведете командата и използвайте бягство знак навсякъде, където има място в името:
    cat файл  name.txt

    Използване на изходен знак за избягване на грешка в интервали

Бонус: Използване на оферти и бягство

Понякога, когато използвате директорията в командата, може да има последствия от използването на кавички по общия път. Това е така, защото някои команди като „ mv ' или ' cp ‘Ще разгледа пътя като източник на файл ако котировката се използва изцяло. Трябва да предоставите оферти и за двете източник и дестинация индивидуално, така че команди като „ cp ‘Може да работи правилно. Можете също да проверите примера по-долу, който ще ви покаже, че използването на изходен символ за пътя е много по-сложно и потребителите могат да сгрешат с него.

Разликата между котировките и символа за бягство

2 минути четене