2010-11-03 40 views
22

Tôi muốn lấy đường dẫn của thư mục cục bộ và đặt mỗi thư mục trên đường dẫn theo một dòng khác. Tôi đã cố gắng để làm điều đó bằng cắt:cắt một chuỗi thành nhiều dòng trong bash

pwd | cut -f 1- -d\/ --output-delimiter=\n

nhưng nó không thay đổi '/' s vào EOL, nhưng đặt n của thay thế. Tôi đang làm gì sai?

Trả lời

36

này nên làm các trick

pwd | tr '/' '\n' 

Nếu bạn không muốn một dòng trống ở phần đầu (do ban đầu /) bạn có thể làm

pwd | cut -b2- | tr '/' '\n' 

Ví dụ:

#[email protected]:~/tmp/files$ pwd 
/home/aioobe/tmp/files 
#[email protected]:~/tmp/files$ pwd | cut -b2- | tr '/' '\n' 
home 
aioobe 
tmp 
files 
6

Bạn có thể thử:

pwd | tr '/' '\n' 
4

Đây là cách bạn sẽ thực hiện những gì bạn đặt ra để làm (sử dụng ANSI-C trích dẫn):

pwd | cut -f 1- -d\/ --output-delimiter=$'\n' 
Các vấn đề liên quan