2010-08-14 34 views
42

Hy vọng khá đơn giản, để giải thích trường hợp sử dụng khi tôi chạy lệnh sau (OS X 10.6):Cách dễ nhất để tách ký tự dòng mới khỏi chuỗi đầu vào trong bảng mã

pwd | pbcopy

bảng phấn có chứa ký tự dòng mới ở cuối. Tôi muốn loại bỏ nó.

+0

Cảm ơn câu trả lời! –

+0

Sidenote: nếu lý do bạn muốn làm điều này là dán vào trường "Go to" trong Finder (gõ '~'), bạn chỉ có thể sử dụng 'pwd | pbcopy', dán vào trường văn bản và sau đó nhấn backspace. – kizzx2

Trả lời

72

pwd | tr -d '\n' | pbcopy

+14

Điều này cũng làm cho một bí danh tốt đẹp, 'bí danh sao chép =" tr -d '\ n' | pbcopy "'. – tobius

+7

Sẽ không loại bỏ tất cả các dòng mới? Điều gì sẽ xảy ra nếu tôi chỉ muốn xóa dòng mới nhất? – davidmh

+2

@davidmh - Yea xếp tất cả chúng. Tôi luôn luôn xóa ký tự cuối cùng mà tác phẩm đã làm việc tốt cho tôi: 'head -c -1'. http://taylor.woodstitch.com/linux/copy-local-clipboard-remote-ssh-server/ –

25
printf $(pwd) | pbcopy 

hoặc

echo -n $(pwd) | pbcopy 

Lưu ý rằng những thực sự nên được trích dẫn trong trường hợp có ký tự khoảng trắng trong tên thư mục. Ví dụ:

echo -n "$(pwd)" | pbcopy 
+0

Đầu tiên là không an toàn: có thể có% trong chuỗi. – grep

+2

Bạn có thể làm cho nó an toàn như thế này: 'printf '% s' $ (pwd) | pbcopy' –

+1

Lệnh thứ hai rất có giá trị. Thật tuyệt khi biết về tùy chọn "echo without newline": "echo -n" text "' hoặc '" text \ c "' – cwd

7

Tôi đã viết một tiện ích gọi là noeol để giải quyết vấn đề này. Nó ống stdin để stdout, nhưng lá ra dòng mới sau nếu có một. Ví dụ.

pwd | noeol | pbcopy 

… I aliased copy to noeol | pbcopy.

Kiểm tra xem tại đây: https://github.com/Sidnicious/noeol

Các vấn đề liên quan