Как через ssh найти файл

There will be a lot of times that you may need to search, find and locate a folder, file or a text line inside your hosting account. Linux offers a couple of very easy ways to search in your file system using SSH. In this article, we will show you the most common and easy ways to find what you are looking for the easy, fast and secure way.

What is SSH?

How to search for and locate files in LINUX using SSH commandsSSH is a network protocol that allows encrypted data transmission. It is developed to run commands on a remote machine (server) and to transfer files from one machine to another. It also allows easy management of the server you are connected to. SSH provides a high level of authentication and security during communication between servers over an insecure connection. There are multiple SSH commands that are easy to use and can help you search for, find and locate files and folders on Linux hosting servers. WebHostFace offers SSH as part of our award-winning SSH shared Web Hosting.

How to search for and locate files in LINUX using SSH commands

Let’s start by the most common SSH search for a file by its name:

find . -name MyCoolPhoto.jpg

Of course, if you are not sure about the file extension, you can locate files using SSH commands by their name only:

find . -name “MyCoolPhoto” 

If you are looking to find a certain directory, you can use the following command:

cPanel Hosting from WebhostFace

find / -type d -name MyDirectory   (where “/” is the starting point in our case the whole file system)

If you would like to filter for files that were modified in the four days:

find . mtime -4

Detailed explanation of how the above mentioned SSH commands work

find – this is a build-in Linux library that allows you to find files and folders through SSH
. (the dot or the first argument) – with this you specify your search start point in SSH commands. The dot in the specific example above represents the current directory of the user.
name – this argument specifies that you are making a SSH search for a file by its name
-type d – the argument type can take two values d (for directory) and f (for file)
mtime – with this argument you can easily locate files and folders in Linux that have been modified in the last X days. In the example above 4 is the number of days.

To search in SSH for a word or a sentence in a file you can use the grep command:

grep “username” wp-config.php

this command will output the username keyword in the wp-config.php file, but if you are not sure in which file this is located, you can use:

grep -r – H “username” *
This will look for the username in all files and give out the output in a recursive and human-readable format which the -r and -H options stands for.

Play around and use a Linux Dedicated Servers or Linux SSD VPS to master your SSH skills or any other TOP SSH Commands you wish. Get a new cheap cPanel hosting account now with a great discount price – 40% OFF the regular price!

In some cases, you would need to find the location of a given file or to search for a certain text in all files under a directory. SSH provides two different commands, which can be used to accomplish this. In order to search for a file location, you can use the find command. Find is a very powerful tool and accepts various arguments allowing you to specify the exact search term (i.e search by name, by type or even by modified time).

For example, to search for a file called myFile.txt under the current folder (and all subfolders), you would need to use the following command:

find . -name myFile.txt

If you are uncertain about the file name or would like to match a part of the name, you can use a wildcard pattern:

find . -name "myFile*"

If you would like to list only directories and leave all files out of the result:

find . -type d

Or if you want to filter only files modified in the last 2 days, you would need to use:

find . -mtime -2

You can also search for a given text in the content of the files as well. The command you should be using, in this case, is grep. Grep is a very powerful tool and accepts various command line arguments. For a full list it is recommended to check the manual pages by typing man grep.

An example of using grep to find a certain text can be found below:

grep  "database" configuration.php

The above command instructs grep to look for the string “database” in the configuration.php file and display the containing line. If you don’t know which file contains the text, you can use:

grep -r -H "database" *

This will make grep look recursively (-r option) and provide the result in a human-readable format (-H option) for the string “database” in all (*) files under the current working directory.

To only list the file names containing the string you are searching but omit the line containing it, you can use the -l argument:

grep -l "database" *

This will display the filenames containing the word “database”, but will not actually list the line containing it.

Grep can also be used to filter the results from other commands. For example, the line below will only output configuration.php result:

ls -la | grep configuration.php

In some rare cases, find and grep may prove not useful. For example, to find a certain file in the whole server, it would be best to use an alternative command – whereis or which:

whereis perl

or

which perl

The execution of the above commands will locate the perl binary and display the full path(s) to it.

SSH позволяет управлять аккаунтом напрямую на сервере. С его помощью можно собрать полную информацию о занятом дисковом пространстве и количестве файлов, а также, например, импортировать объемный дамп базы данных, работать с системой контроля версий git и проектами на Node.JS или Python.

После подключения вы увидите приглашение командной строки: [username@server ~]$ 

  • username — логин вашего аккаунта на хостинге;
  • server — имя сервера, на котором он размещен.

Для работы требуется знание команд. Они выглядят так: command -key argument

  • command — название команды;
  • -key — дополнительные опции (ключи);
  • argument — значение, с которым будет работать команда (путь до папки, фраза, которую нужно найти и т.д.).

Рекомендуем прочитать справочную информацию для команды, которую вы планируете использовать, введя в консоли man. Обратите внимание, справочник англоязычный.

Например, откроем руководство для ls: [username@server domains]$ man ls Чтобы выйти из режима справки, нажмите «q».

Команды для работы с файлами

ls — просмотр содержимого каталога

Команда выводит перечень видимых файлов и папок: [username@server domains]$ ls
 domain.ru site.ru

Чтобы получить полную информацию о содержимом каталога, пригодятся ключи:

  • -l — вывести подробную информацию о файле;
  • -a — отобразить скрытые файлы;
  • -h — отобразить размер файла в удобном формате (по умолчанию выводится в байтах).

[username@server domains]$ ls -lah
итого 16K
drwxr-xr-x. 4 username username 4,0K янв 23 12:11 .
drwx--x---. 4 username service 4,0K дек 25 18:45 ..
drwxr-xr-x. 3 username username 4,0K дек 3 07:01 domain.ru
 drwxrwxr-x. 3 username username 4,0K янв 23 12:12 site.ru

pwd — показать полный путь до директории

Команда выводит полный путь до каталога, в котором вы находитесь: [username@server domains]$ pwd
 /home/username/domains

cd — переход по директориям

Для перехода между каталогами используйте команду cd. В качестве аргумента укажите путь до папки, куда нужно переместиться: [username@server ~]$ cd domains/domain.ru/public_html/ // Переходим в каталог domains/domain.ru/public_html/ .

// Проверяем:
[username@server public_html]$ pwd // Выводим путь до текущего каталога.
 /home/username/domains/domain.ru/public_html // Готово. Переход осуществлен.

Чтобы перейти на уровень вверх относительно текущего каталога, введите cd ..: [username@server public_html]$ cd ..
[username@server domain.ru]$ pwd // Выводим путь до текущего каталога.
 /home/username/domains/domain.ru // Мы перешли на уровень выше.

cd – — шаг назад (вернуться к предыдущему каталогу): [username@server domain.ru]$ cd -
 /home/username/domains/domain.ru/public_html // Перешли к каталогу public_html, где были ранее.

cd (без параметров) — перейти в домашний каталог: [username@server public_html]$ cd
[username@server ~]$ pwd // Выводим путь до текущего каталога.
 /home/username // Вернулись в домашний каталог пользователя username.

mkdir — создание папки

Команда имеет вид: mkdir путь_до_каталога, где «путь_до_каталога» — путь к создаваемой папке, в конце указывается ее имя.

Например: [username@server ~]$ mkdir domains/site.ru/example // Создаем каталог example по пути domains/site.ru/.

Если вы создаете каталог в том же месте, где находитесь, полный путь указывать не нужно: [username@server ~]$ cd domains/site.ru/ // Переходим в каталог site.ru.
[username@server site.ru]$ mkdir example2 // Создаем каталог example2 в текущем каталоге.

// Проверяем:
[username@server site.ru]$ ls // Выводим список файлов.
 example2 public_html // Каталог example2 создан.

touch — создание файла

touch создаёт пустой файл с именем и расширением, которое вы укажете, или обновляет дату модификации существующего файла: [username@server domains]$ touch example.txt // Создаем файл example.txt в текущем каталоге.

// Проверяем:
[username@server domains]$ ls // Выводим список файлов.
 example.txt // Файл example.txt создан.

rm — удаление папок и файлов

Для удаления файла достаточно указать путь до него: [username@server public_html]$ rm example.txt

Чтобы удалить директорию, используйте ключи -r (рекурсивно) и -f (без подтверждения): [username@server public_html]$ rm -rf example1

Очистить текущий каталог от всех файлов и папок можно с помощью команды: [username@server public_html]$ rm -rf *

cp — копирование файлов/папок

В качестве аргументов для команды укажите сначала полный путь до файла, который нужно скопировать, и через пробел полный путь до каталога, куда будет произведено копирование.

Чтобы скопировать папку со всем ее содержимым, укажите ключ -r (рекурсивно): [username@server]$ cp -r /home/username/domains/site.ru/public_html/example /home/username/domains/domain.ru // Копируем папку example из domains/site.ru/public_html в domains/domain.ru.

Если вы находитесь в том же каталоге, где и объект, который нужно скопировать, полный путь до него указывать не нужно: [username@server public_html]$ cp -r example2 /home/username/domains/domain.ru // Копируем папку example2 из domains/site.ru/public_html в domains/domain.ru.

// Проверяем:
[username@server public_html]$ cd /home/username/domains/domain.ru // Переходим в каталог domains/domain.ru.
[username@server domain.ru]$ ls // Выводим список файлов.
 example2 public_html // Папка скопирована.

mv — перемещение или переименование файлов и папок

Синтаксис команды mv такой же как, и у cp (копирование). Укажите сначала полный путь до файла, который нужно перенести, а затем путь до каталога, куда будут перемещены данные.

Пример:  [username@server domain.ru]$ mv primer.txt /home/username/domains/site.ru/public_html // Переносим файл primer.txt из domains/domain.ru/ в domains/site.ru.

//Проверяем:
[username@server domain.ru]$ ls // Выводим список файлов в каталоге domain.ru.
example2 public_html // Проверяем, что в списке нет файла primer.txt.
[username@server domain.ru]$ cd /home/username/domains/site.ru/public_html // Переходим в каталог domains/site.ru/public_html.
[username@server public_html]$ ls // Выводим список файлов.
 primer.txt // Файл перенесен.

Чтобы переименовать файл, введите сначала текущее имя, а затем — новое: [username@server public_html]$ ls // Выводим список файлов в текущем каталоге.
example.txt
[username@server public_html]$ mv example.txt primer.txt // Изменяем имя example.txt на primer.txt.

// Проверяем:
[username@server public_html]$ ls // Выводим список файлов.
 primer.txt // Файл переименован.

wget — получение файлов со сторонних сайтов

Скачивайте файлы на ваш аккаунт хостинга со сторонних ресурсов с помощью утилиты wget.

Wget работает с протоколами HTTP, HTTPS и FTP. С ее помощью удобно скачивать архивы, установочные пакеты в нужную директорию на дисковом пространстве аккаунта. Чтобы начать процесс закачки, выполните команду: [username@server ~]$ wget http://domain.ru/archive.zip

scp — передача файлов с компьютера

Команда scp поможет передать файлы с вашего устройства на unix на аккаунт. Заранее устаналивать соединение по SSH для использования этой утилиты не нужно. Выполните команду: [user@mycomputer ~] $ scp /home/user/desktop/file.txt username@domain.ru:domains/domain.ru/public_html Здесь /home/user/desktop/file.txt — путь до файла на копьютере, username@domain.ru — логин аккаунта на хостинге и доменное имя или IP-адрес сервера, domains/domain.ru/public_html — путь до директории, куда нужно загрузить файл.

Чтобы передать каталог, используйте ключ -r (рекурсивно):

[user@mycomputer ~] $ scp -r /home/user/desktop/folder username@domain.ru:domains/domain.ru/public_html

du — получение информации о занятом дисковом пространстве

По умолчанию команда выводит информацию о весе каждого каталога и подкаталога в байтах и пути до них: [username@server domains]$ du
4 ./site.ru/example
4 ./site.ru/public_html
12 ./site.ru
20 ./domain.ru
 36 . 

Чтобы читать результат работы команды было проще, добавьте ключи:

  • -s — вывести общий объем каталога;
  • -h — отобразить размер файла в удобном формате (Кб, Мб или Гб).

В качестве аргумента укажите символ «*»: команда посчитает размер каждого каталога и файла в директории:  [username@server ~]$ du -sh *
70M domains
4,0K example2
4,0K tmp
12K username_wor00.sql.bz2.gz
 16K username_wor1.sql

find — поиск файлов/папок

Команда имеет вид: find путь_до_каталога -ключи , где «путь_до_каталога» — папка, с которой начинается поиск.

Рекомендуем ознакомиться с руководством (man) для find, так как она обладает обширным набором ключей. Мы рассмотрим основные:

  • -name — поиск файлов, имена которых соответствуют заданному шаблону;
  • -type — поиск файлов определенного типа:
    • f — обычный файл;
    • d — каталог;
    • l — символическая ссылка.

Примеры

Найти все файлы с расширением .php в текущем каталоге (обозначается символом «.») и подкаталогах: [username@server ~]$ find . -name "*.php"

Найти все файлы с расширением .php, а также файлы, имена которых начинаются с точки в каталоге public_html: [username@server ~]$ find ./public_html -name "*.php" -o -name ".*"

Найти все каталоги, имена которых начинаются с «w» в текущей папке: [username@server ~]$ find . -name "w*" -type d

Количество файлов

С помощью find можно посчитать количество файлов на аккаунте. Выполните команду:  [username@server ~]$ find . | wc -l 

grep — поиск файлов по их содержимому

Команда имеет вид: grep “текст” путь_до_файла, где «текст» — информация, которую нужно найти, «путь_до_файла» — путь к файлу, по которому производится поиск.

Узнаем с помощью grep, какая база данных используется сайтом: [username@server domain.ru]$ grep "username_" -R // username_ — начало имени базы данных. Замените «username» на логин вашего аккаунта, -R — рекурсивный поиск.
public_html/example.php:define('DB_NAME', 'username_wor00');
public_html/example.php:define('DB_USER', 'username_wor00');

stat — подробная информация о файле

Выполните команду stat, чтобы узнать, когда файл был создан и изменялся: [username@server public_html]$ stat example.php
Файл: «example.php»
Размер: 3317 // Размер в байтах.
Inode: 57804829 // Уникальный индексный дескриптор.
Доступ: (0644/-rw-r--r--) // Права доступа.
Uid: ( 3645/username) // ID и имя владельца.
Gid: ( 3646/username) // ID и имя группы владельца.
Доступ: 2018-01-23 12:03:21.829402333 +0300 // Дата последнего обращения.
Модифицирован: 2017-12-20 13:34:11.831201546 +0300 // Дата внесения последних изменений в содержимое файла.
 Изменён: 2018-01-23 12:03:41.231474591 +0300 // Дата последнего изменения имени файла или прав доступа.

ln — создание ссылки на файл

Чаще всего применяется для создания символических ссылок (ярлыков). Используйте их, если необходимо, например, изменить путь до корневой директории сайта.

Команда имеет вид: ln -s исходный_файл целевой_файл, где «целевой_файл» будет ссылкой на «исходный_файл». Всегда указывайте полный путь к исходному файлу: [username@server domains]$ ln -s /home/username/domains/domain.ru/public_html/example1 /home/username/domains/site.ru/public_html/example2

// Проверяем:
[username@server domains]$ ls -la site.ru/public_html/example2 // Выводим полную информацию о каталоге example2.
 1 username username 53 янв 23 12:14 example1 -> /home/username/domains/domain.ru/public_html/example1

Для удаления символической ссылки перейдите в каталог, где сохранен «целевой_файл» и удалите созданный ярлык: [username@server public_html]$ cd /home/username/domains/domain.ru/public_html/ // Переходим в каталог, где расположена папка example1.
[username@server public_html]$ ls -la // Проверяем наличие символической ссылки: выводим полную информацию о каталоге.
drwxrwxr-x. 2 username username 4096 янв 23 12:08 example1
lrwxrwxrwx. 1 username username 53 янв 23 12:09 example2 -> /home/username/domains/domain.ru/public_html/example1
[username@server public_html]$ rm example2 // Удаляем ярлык.
[username@server public_html]$ ls -la // Еще раз выводим список файлов и проверяем, удалена ли символическая ссылка.
 drwxrwxr-x. 2 username username 4096 янв 23 12:08 example1

сhmod — изменение прав доступа

Изменить права на файл или папку можно с помощью команды chmod xxx путь_до_файла , где xxx – права, «путь_до_файла» — путь до папки или файла. Чтобы изменить права и на папку, и на ее содержимое, добавьте ключ -R (рекурсивно).

Пример

[username@server domains]$ chmod -R 777 /home/username/example2 // Устанавливаем права 777 для папки example2 и ее содержимого.

// Проверяем:
[username@server ~]$ stat example2 // Смотрим статус.
Файл: «example2»
Доступ: (0777/drwxrwxrwx) // Права для каталога example2 изменены на 777.
[username@server ~]$ cd example2/ // Переходим в example2.
[username@server example2]$ ls // Выводим содержимое каталога.
copytest.txt example1
[username@server example2]$ stat copytest.txt // Смотрим статус файла copytest.txt.
Файл: «copytest.txt»
 Доступ: (0777/-rwxrwxrwx) // Права доступа к файлу изменены на 777.

mc — Midnight Commander

Midnight Commander — файловый менеджер с текстовым интерфейсом, встроенный в консоль. Для запуска введите в команду mc.

Работа с базами данных

mysql — подключение к базе данных

Процесс подключения к базе данных с помощью команды mysql мы описали в статье.

Импорт дампа базы данных

mysql позволяет импортировать дамп базы данных, загруженный на дисковое пространство аккаунта. Выполните команду: [username@server domains]$ mysql -u db_username -p db_name < dump_name.sql где

  • db_username — имя пользователя базы данных;
  • db_name — название базы;
  • dump_name.sql — имя дампа.

mysqldump — экспорт дампа БД

Чтобы выгрузить дамп на дисковое пространство аккаунта выполните команду: [username@server domains]$ mysqldump -u db_username -p db_name > dump_name.sql Он будет помещен в каталог, из которого выполнялось действие.

Работа с архивами

Выбор команды для распаковки архива зависит от формата, в котором он создан: [username@server domains]$ unzip archive.zip
[username@server domains]$ unrar x archive.rar
[username@server domains]$ tar xf archive.tar
[username@server domains]$ tar xfz archive.tar.gz
[username@server domains]$ gunzip archive.gz
 [username@server domains]$ 7za x archive.7z

Особенности

Для команды rar обязательно укажите параметр «x», чтобы сохранить структуру.

gunzip распаковывает файлы, после чего удаляет архив. Если нужно его сохранить, создайте копию на дисковом пространстве аккаунта.

Создать архив можно в формате .zip или .tar: [username@server domains]$ tar cf archive.tar directory/ // Помещаем каталог directory в архив archive.tar.
 [username@server domains]$ zip -r archive directory // Помещаем каталог directory в архив archive.zip.
Он будет сохранен в каталоге, где выполнялась команда. // Проверяем:
[username@server domains]$ ls // Выводим список файлов.
 archive.tar archive.zip directory domain.ru example.txt site.ru // Архивы archive.zip и archive.tar созданы.

crontab — планировщик Cron

Настройте выполнение скриптов по расписанию с помощью планировщика Cron. Чтобы добавить новое задание, выполните: [username@server ~]$ crontab -e

Откроется окно текстового редактора vim, нажмите клавишу «i», чтобы внести изменения. Добавьте команду в конец документа. Она состоит из времени выполнения (минута, час, число, месяц, день недели), пути до утилиты и пути до выполняемого скрипта, например: 15 12 * * * /usr/local/bin/wget http://domain.ru/script.php // Скрипт script.php будет выполняться каждый день в 12:15 

Выбор интерпретатора зависит от скрипта, который нужно выполнить. Для php-скриптов подойдет php, curl или wget, для Python или Node.js — python или node соответственно.

Чтобы узнать путь до нужного интерпретатора, выполните команду: [username@server ~]$ which php

Сохраните изменения в редакторе vim. Нажмите Esc и введите «:q!»

Вместо php укажите имя интерпретатора.

idn — преобразование домена в Punycode

Чтобы перевести IDN-домен в Punycode, выполните команду: [username@server ~]$ idn домен.рф

Горячие клавиши

Для удобства работы в консоли используйте горячие клавиши.

  • clear — очистить окно;
  • history — посмотреть список выполненных команд;
  • Ctrl+C — остановить выполнение команды;
  • Ctrl+D — выйти из системы;
  • !! — повторить последнюю команду;
  • Tab — автодополнение. Начните вводить имя папки или файла и нажмите Tab — название будет дописано автоматически.

Для удаленного управления Unix или Linux веб-сервером по SSH-протоколу обычно используют программу PuTTY, далее приведен список основных команд.

1

Информация о системе

arch Архитектура компьютера
lscpu Информация о процессоре
vmstat Текущая загрузка процессора
uname Версия ядра
lsmod Вывести загруженные модули ядра
last reboot История перезагрузок системы
free Сколько используется памяти
free -m Состояние оперативной памяти
df Вывести информация о дисках
du Вывести, сколько памяти занимает текущий каталог

2

Процессы

shutdown -h now Остановить систему
exit Выйти из системы
reboot Перезагрузка сервера
ps Показать активные процессы
top Показать все процессы (с обновлением)
pstree Вывести дерево процессов
bg Вывести список фоновых задач
whereis программа Место расположения программы
kill процесс Убить процесс
killall название Убить все процессы по имени

3

Дата и время

date Вывести дату и время
cal Вывести календарь
uptime Вывести аптайм

4

Пользователи

whoami Вывести логин
finger юзер Вывести информацию о пользователе
last юзер Вывести историю активности

5

Уровни доступа

chmod 755 файл Задает файлу права 755
chown юзер файл Назначить файлу владельца
chgrp группа файл Назначить файлу группу-владельца

6

Файлы и директории

tree Вывести дерево файлов и директорий
pwd Вывести текущую директорию
which файл Вывести полный путь к файлу
ls Показать список файлов в текущей директории
ls -al Показать все файлы на сервере
ls -a Показать скрытые файлы и директории
cd Перейти в домашнюю директорию
cd директория Перейти в указанную директорию
cd .. Перейти в директорию уровнем выше
mv директория директория1 Переименовать или переместить файл или директорию
cp файл файл2 Скопировать файлы
mkdir директория Создать директорию
mkdir директория1 директория2 Создать две директории одновременно
mkdir -p /директория1/директория2/ Создать дерево директорий
rm -rf директория Удалить директорию с содержимым
rmdir директория Удалить директорию
touch файл Создать файл
rm файл Удалить файл

7

Ссылки

ln файл ссылка Создать ссылку на файл или директорию
ln -s файл ссылка* Создать символическую ссылку на файл или директорию

8

Просмотр содержимого файлов

more файл Вывести содержимое файла
head файл Вывести первые 10 строк из файла
tail файл Вывести последние 10 строк из файла

9

Поиск

grep слово файл Ищет «слово» в «файле»
locate файл Найти все файлы с именем «файл»
find / -name слово Найти файлы и директории по имени
find / -user юзер Найти файлы и директории, принадлежащие пользователю

10

Интернет и сети

hostname Вывести имя компьютера
ping 192.168.0.1 Пинг до хоста
netstat -rn Вывести локальную таблицу маршрутизации
ip link show Отобразить состояние всех интерфейсов
whois example.com WHOIS домена
dig example.com Вывести DNS домена
wget ссылка Загрузит файл из интернета в текущую директорию на сервере

how to find a file exists in particular dir through SSH

for example :
host1 and dir /home/tree/TEST

Host2:- ssh host1 – find the TEST file exists or not using bash

asked Mar 16, 2011 at 12:34

Tree's user avatar

2

ssh will return the exit code of the command you ask it to execute:

if ssh host1 stat /home/tree/TEST > /dev/null 2>&1
then 
  echo File exists
else 
  echo Not found
fi

You’ll need to have key authentication setup of course, so you avoid the password prompt.

answered Mar 16, 2011 at 12:42

Erik's user avatar

ErikErik

88k13 gold badges198 silver badges189 bronze badges

2

This is what I ended up doing after reading and trying out the stuff here:

FileExists=`ssh host "test -e /home/tree/TEST && echo 1 || echo 0"`

if [ ${FileExists} = 0 ]
  #do something because the file doesn't exist
fi

More info about test: http://linux.die.net/man/1/test

answered Nov 16, 2012 at 0:54

mikeytown2's user avatar

mikeytown2mikeytown2

1,72424 silver badges37 bronze badges

0

An extension to Erik’s accepted answer.

Here is my bash script for waiting on an external process to upload a file. This will block current script execution indefinitely until the file exists.

Requires key-based SSH access although this could be easily modified to a curl version for checks over HTTP.

This is useful for uploads via external systems that use temporary file names:

  • rsync
  • transmission (torrent)

Script below:

#!/bin/bash
set -vx

#AUTH="user@server"
AUTH="${1}"
#FILE="/tmp/test.txt"
FILE="${2}"

while (sleep 60); do
    if ssh ${AUTH} stat "${FILE}" > /dev/null 2>&1; then
        echo "File found";
        exit 0;
    fi;
done;

answered Apr 8, 2013 at 17:38

Drew Anderson's user avatar

No need for echo. Can’t get much simpler than this 🙂

ssh host "test -e /path/to/file"
if [ $? -eq 0 ]; then
    # your file exists
fi

answered Apr 15, 2015 at 1:14

karni's user avatar

karnikarni

8948 silver badges15 bronze badges

Добавить комментарий