Bất cứ ai cũng có thể hướng dẫn tôi tạo các lệnh tùy chỉnh trong Unix / Linux.
Bất cứ ai cũng có thể hướng dẫn tôi tạo các lệnh tùy chỉnh trong Unix / Linux.
Câu trả lời:
Tạo một tập lệnh bash trong thư mục / usr / bin của bạn, nó sẽ trông giống như thế này
#!/bin/bash
Whatever combination of commands you want to run when you type this thing.
Nó thực sự dễ dàng.
Chỉ cần đặt tên cho tập lệnh bash những gì bạn muốn nhập vào thiết bị đầu cuối và làm cho nó có thể thực hiện được: chmod +x filename
và bạn thật tuyệt!
./filename
Cập nhật biến đường dẫn của bạn để bao gồm thư mục bin này. Đặt nó trong .profile
hoặc .bash_profle
tập tin để làm cho nó vĩnh viễn.
export PATH=$PATH":$HOME/bin"
Tạo một kịch bản nói, "xin chào" và giữ nó trong thư mục bin của bạn. Cấp quyền thực thi cho kịch bản xin chào bằng cách $ chmod +x hello
.
#!/bin/bash
echo My first program
Tải lại .profile
hoặc .bash_profle
:
$ . ~/.bash_profile
Từ bất kỳ thư mục nào, bạn chỉ cần gõ:
$ hello
My first program
bin
thư mục trong rất nhiều câu trả lời ở đây. Có vấn đề gì nếu nó .bin
thay vì bin
? Tôi thực sự kén chọn về home
ngoại hình của mình và tôi không muốn có thêm một thư mục chỉ vì.
zsh
cài đặt của tôi hoặc $PATH
cuối cùng là nó chmod -x hello
không hoạt động, vốn cũng không -X
. Thay vào đó tôi đã thử chmod 755 hello
, trong khi tôi không chắc chắn về các rủi ro bảo mật liên quan đến lệnh này, nó thực sự cho phép tôi chạy hello
. Có ai có một lời giải thích cho điều này? Tôi cho rằng đó là một vấn đề liên quan đến tuổi?
chmod +x hello
để thêm đặc quyền 'chạy' vào tập lệnh. chmod -x hello
thực hiện ngược lại chính xác - loại bỏ các đặc quyền 'chạy'. (Lưu ý sự khác biệt dấu cộng / trừ trong câu trả lời và trong nhận xét của bạn.)
Dễ dàng, tạo một bí danh.
Giả sử bạn muốn viết một lệnh để cd vào thư mục tải xuống của bạn. Và bạn muốn gọi nó là cdd.
alias cdd='cd ~/Downloads'
Bạn có thể tạo bất kỳ lệnh nào bạn muốn.
Dưới đây là thông tin thêm:
http://www.mediacolitic.com/linux/command/alias.html
Hầu hết, nếu không phải tất cả cho đến bây giờ, các bản phân phối Linux có một tập lệnh nhỏ trong ~ / .bashrc trông gần giống như thế này:
if [ -e ~/.bash_aliases ]
then
. ~/.bash_aliases
fi
Điều này chỉ có nghĩa là bạn có thể tạo các lệnh của riêng mình (còn được gọi là ' aliases
' thường được gọi là một lệnh hiện có với một số đối số bạn luôn phải sử dụng hoặc danh sách các lệnh phải được thực hiện theo thứ tự).
Bản phân phối Linux của bạn rất có thể sẽ không có tệp .bash_aliases được tạo trong nhà của bạn, trừ khi bạn đã thực hiện thủ công điều đó. Vì vậy, để tạo tập tin, gõ lệnh sau:
touch ~/.bash_aliases
Bây giờ tệp đó sẽ được thực thi tự động mỗi khi bạn tắt Terminal mới.
Những gì bạn có thể làm bây giờ là tạo một danh sách các bí danh và thêm chúng vào tệp đó để sử dụng sau. Ví dụ: lệnh rm
(remove) theo mặc định KHÔNG yêu cầu bạn xác nhận yêu cầu của bạn khi bạn yêu cầu xóa tệp / thư mục. Tuy nhiên, có một đối số rm
yêu cầu bạn xác nhận yêu cầu của bạn , -i
. Vì vậy, rm -i filePath
sẽ hiển thị một thông báo hỏi bạn nếu bạn chắc chắn muốn xóa tệp đã chỉ định. Bây giờ, nếu bạn vô tình xóa một tập tin, rất có thể bạn sẽ quên bao gồm -i
tùy chọn và đó là nơi alias
trở nên rất có lợi. Gõ lệnh sau
echo "alias rm='\rm -i'" >> ~/.bash_aliases
sẽ thông báo Bash
rằng mỗi khi bạn yêu cầu xóa một tập tin, một thông báo xác nhận sẽ được hiển thị cho bạn. Tất nhiên, có rất nhiều thứ bạn có thể làm được, đây chỉ là những điều cơ bản.
Nếu bạn muốn tìm hiểu làm thế nào để sử dụng một số lệnh cơ bản (tức là cd
, touch
, rm
, mkdir
, pushd
, popd
, vv) và / hoặc những người phức tạp hơn, tôi khuyên bạn nên một cuốn sách rất tốt bạn có thể có trên kệ sách của bạn như một tài liệu tham khảo được gọi là
một hướng dẫn thực tế cho các trình soạn thảo lệnh linux và lập trình shell , bởi Mark G. Sobell . SĐT: 980-0133085044