Member 14161770 Ответов: 2

Перенос скрипта на linux


Привет,

У меня есть скрипт, написанный на ksh(Unix), и мне нужно портировать его на bash(Linux).
Я застрял в точке, чтобы узнать, отличается ли формат передачи аргументов в обоих случаях:
ну а то, как написан сценарий-это :
echo "$1\n$2\n$3\n" | /path/to/binary/of/script >/dev/null 2>/dev/null(из основного скрипта он вызывает другой скрипт для запуска в основном)

И откуда я знаю это

"sh /path/to/script $1 $2 $3"

Чтобы понять подводные камни, я скопировал скрипт в Linux и запустил его. Сценарий терпит неудачу и выдает ошибку. И я сомневаюсь, что это связано с форматом

Любая помощь будет оценена по достоинству!

Что я уже пробовал:

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

Richard MacCutchan

В чем же ошибка?

2 Ответов

Рейтинг:
2

Andy Allinger

Сценарий, сохраненный в файл для выполнения в Linux, должен начинаться:

#!/bin/bash

Затем следующая строка(ы) скрипта должна быть командной строкой(ами) для выполнения:
echo "$1\n$2\n$3\n" | /path/to/binary/of/script &> /dev/null

Это текстовый файл из двух или более строк. &Amp; gt; перенаправляет стандартный выход и стандартную ошибку.
Будет ли это работать, чтобы вызвать двоичный файл напрямую? А вы пробовали:
user@host$ /path/to/binary/of/script arg1 arg2 arg3 &> /dev/null

?


Рейтинг:
1

k5054

Если вам удобнее работать с ksh, почему бы просто не установить его на свой дистрибутив linux? Он должен быть доступен для большинства дистрибутивов. Если не видите KornShell[^]