Tôi cố gắng để thực hiện một lệnh từ xa thông qua ssh, ví dụ:thực thi lệnh ssh không xem xét .bashrc | .bash_login | .ssh/rc?
ssh <user>@<host> <command>
Lệnh mà cần phải được thực thi là một bí danh, được định nghĩa trong .bashrc, ví dụ
alias ll='ls -al'
Vậy cuối cùng thì lệnh sau đây cần được thực hiện:
ssh [email protected] "ll"
Tôi đã phát hiện ra rằng .bashrc chỉ được có nguồn gốc với vỏ tương tác, vì vậy trong .bash_login tôi đặt:
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
và tôi cũng đã cố gắng xác định bí danh trực tiếp trong .bash_login.
Tôi cũng đã cố gắng đặt định nghĩa bí danh/tìm nguồn cung ứng của .bashrc trong .bash_profile và cũng trong .ssh/rc. Nhưng không có gì trong số này hoạt động. Lưu ý rằng tôi không thể thay đổi cách lệnh ssh được gọi vì đây là một phần của một số tập lệnh cài đặt nhị phân. Điều duy nhất tôi có thể sửa đổi là môi trường. Có khả năng nào khác để nhận được bí danh này khi lệnh ssh được thực thi không? Có một số cấu hình ssh mà phải được điều chỉnh?
Những máy là những tập tin này (.bashrc, vv) trên? Máy bạn đang ssh-ing, hoặc máy bạn đang ssh-ing từ? –
Các tệp trên máy tôi đang ssh-ing đến – blackicecube
Tôi cũng đã kiểm tra/etc/passwd cho người dùng của mình. Nó có/usr/bin/bash được định nghĩa. – blackicecube