Tạo nhiều bí danh tạm thời


9

Tôi không phải là người dùng root và tôi không có quyền truy cập vào tệp bí danh toàn cầu có tất cả các bí danh được tạo, nhưng tôi muốn tạo một số bí danh chỉ hoạt động cho phiên tôi đã đăng nhập. Tôi sử dụng lệnh alias x='cd /parent/child'để tạo một bí danh sẽ cho phép tôi chỉ cần gõ xtrên bàn điều khiển và tôi thay đổi thư mục thành / Parent / Child.

Tuy nhiên, tôi muốn tạo nhiều bí danh & tôi không muốn nhập từng bí danh tôi tạo mỗi lần.

Tôi đã thử đặt tất cả các bí danh = 'làm điều này' vào một tệp (đã cho phép 777) với hy vọng rằng khi chạy tệp, tất cả các bí danh này sẽ được tạo mỗi khi tôi đăng nhập. Nhưng điều đó đã không xảy ra.

Ví dụ :

alias x='cd /parent/child'
alias y='cd /a/b/c'
alias z='tail -0f some.log'

Tôi cũng đã thử điều này trong tập tin nhưng vô ích:

alias x='cd /parent/child';alias y='cd /a/b/c';alias z='tail -0f some.log'

Không có tên bí danh nào tôi đã thử đã có mặt trong bí danh toàn cầu. (Tôi gõ bí danh & thấy đầu ra trên màn hình).


Bạn có thể đặt tất cả các bí danh của bạn trong .bashrctập tin.
cuonglm

@Web Nash: Nhưng nếu bạn muốn chuyển các đối số khác nhau cho các lệnh khác nhau thì điều này sẽ không hoạt động
Do đó,

Câu trả lời:


12

tạo tất cả bí danh phiên của bạn trong một tệp, ví dụ như alias.txt

alias x='cd /parent/child'
alias y='cd /a/b/c'
alias z='tail -0f some.log'

sau đó sử dụng

 . ./alias.txt

Bạn có tất cả các bí danh trong danh sách bí danh, cho phiên duy nhất này.

Biên tập:

Hãy chắc chắn để sử dụng

. ./alias.txt

không phải

./alias.txt

Trong trường hợp trước, nội dung được đọc 'như thể được gõ', trong khi trường hợp sau sẽ xác định bí danh trong một vỏ sẽ thoát.


Tôi đã làm một điều tương tự ban đầu trước khi tôi đăng câu hỏi này. Thay vì một tệp văn bản, tôi chỉ đặt các dòng này vào một tệp mà không có bất kỳ phần mở rộng nào & không hoạt động. Nhưng ngay cả khi tôi đã thử nó với một phần mở rộng .txt thì nó vẫn không hoạt động
Web Nash

Điều đó đã làm việc hoàn hảo. Cảm ơn bạn rất nhiều. Tôi không hiểu sự khác biệt giữa việc sử dụng ba hình thức 1) alias.txt 2) ./alias.txt 3). ./alias.txt
Web Nash

mẫu 1) và 2) tương đương nếu. là trong $ PATH của bạn. thay vào đó sẽ gọi một cái vỏ mới, chạy lệnh. Trong hầu hết các trường hợp, điều này là ổn, tuy nhiên nếu bạn muốn bí danh hoặc hàm, định nghĩa sẽ biến mất khi thoát khỏi shell.
Archemar
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.