Как проверить скрипт bash, если переданный аргумент является файлом или каталогом?

5

Мне нужно написать простой скрипт bash в Ubuntu, который позволит мне передать ему некоторые аргументы, и я хочу проверить, являются ли эти аргументы, которые могут содержать пробелы, файлами или каталогами. Как я могу это сделать?

    
задан user234607 04.03.2014 в 09:16
источник

1 ответ

6

Пример сценария:

#!/bin/bash
# This is a simple demo script
# It takes 3 parameters and checks if they are files or directories

echo "Welcome to my script"

if [[ -f "" || -d "" ]]
then
    echo "The First argument is a file or directory"
fi

if [[ -f "" || -d "" ]]
then
    echo "The second argument is a file or directory"
fi

if [[ -f "" || -d "" ]]
then
    echo "The third argument is a file or directory"
fi

echo "Bye!"

Пример сценария

Я сохранил скрипт как ~/script.sh и сделал chmod +x script.sh

[email protected]:~$ ./script.sh "Шаб лоны" "Обще доступные" "ta lk" 
Welcome to my script
The First argument is a file or directory
The second argument is a file or directory
The third argument is a file or directory
Bye!

Примечание: вы должны передавать аргументы внутри двойных кавычек.

    
ответ дан Danatela 04.03.2014 в 09:44
источник