[Question] Các mẹo vặt, thủ thuật hữu ích với GNU/Linux |
03/05/2009 14:28:53 (+0700) | #1 | 179277 |
|
St Konqueror
Member
|
0 |
|
|
Joined: 08/12/2007 00:47:39
Messages: 229
Offline
|
|
Khi học và làm việc về GNU/Linux nói riêng và *nix nói chung, tớ nghĩ các anh em thường tự tìm được cho mình một số mẹo vặt, một số thủ thuật hay và có ích. Tuy nhiên theo tớ thấy thì vì các thủ thuật này thường đơn giản và ngắn gọn nên các anh em có xu hướng post vào các topics như một dạng mở rộng ngoài lề. Như vậy thì các thủ thuật nay hơi khó để có điều kiện được phổ biến do nằm phân tán khắp nơi. Do vậy tớ lập cái topic này là để anh em nào có những mẹo hay thủ thuật nào hay thì chia sẻ với mọi người (ví dụ như là scripts, aliases...)
Tớ xin phép bắt đầu trước. Ai tham gia thì vui lòng đánh số như topic các lệnh hữu ích để tiện theo dõi.
1.
Mặc định thì biến môi trường $PS1 của các distros GNU/Linux thường có dạng
PS1='\u@\h: \w\$ '
Tuy nhiên, để tập thói quen an toàn khi sử dụng GNU/Linux với quyền root, tớ nghĩ cần thay đổi biến $PS1 của root để có thể cảnh báo người dùng mỗi khi họ sử dụng quyền hạn của root. Tớ đặt dòng sau vào /root/.bashrc
PS1='\[\033[1;31m\]ROOT:\w \$\[\033[00m\] '
Kết quả
ROOT: ~ #
Thứ nhất, màu đỏ sẽ dễ dàng nổi bật trên nền đen của terminal, và tớ dùng chữ ROOT (in hoa) để thay thế cho \u (sẽ cho ra root in thường) để thêm phần gây chú ý, nhằm nhắc nhở là chúng ta đang sử dụng quyền hạn của root. Nếu bạn thích màu nào nổi bật hơn để cảnh báo, thì có thể thay đổi con số 31m thành 3*m tùy thích. |
|
|
|
|
[Question] Re: Các mẹo vặt, thủ thuật hữu ích với GNU/Linux |
03/05/2009 14:44:04 (+0700) | #2 | 179279 |
|
St Konqueror
Member
|
0 |
|
|
Joined: 08/12/2007 00:47:39
Messages: 229
Offline
|
|
2.
Để tạo thư mục trong GNU/Linux, ai cũng biết là phải dùng lệnh mkdir(1), tuy nhiên không phải ai cũng dùng nó một cách hiệu quả.
Ví dụ để tạo cây thư mục a/b/c
$ mkdir a
$ mkdir a/b
$ mkdir a/b/c
tuy nhiên chúng ta có thể dùng cờ -p để chỉ cần dùng 1 dòng lệnh mkdir là đủ:
$ mkdir -p a/b/c
Đẩy chuyện này ra xa hơn, ví dụ bạn muốn tạo 1 cây thư mục để chứa nhạc, thử nghĩ xem dòng lệnh dưới đây sẽ nhanh và gọn hơn bao nhiêu:
$ mkdir -p music/{metal/{nu,black,gothic,death,thrash},rock,rock-n-roll,ballad,alternative,punk}
|
|
|
|
|
[Question] Re: Các mẹo vặt, thủ thuật hữu ích với GNU/Linux |
03/05/2009 15:00:50 (+0700) | #3 | 179280 |
|
St Konqueror
Member
|
0 |
|
|
Joined: 08/12/2007 00:47:39
Messages: 229
Offline
|
|
3.
Đôi khi bạn cài nhiều chương trình khác nhau nhưng có cùng chức năng. Mỗi khi bạn muốn tạo launcher cho các chương trình này trên taskbar để truy cập nhanh thì thường phải cân nhắc nên để cái nào, bỏ cái nào do chiều dài thanh taskbar có hạn. Tôi có một script sau rất gọn và đơn giản cho bạn, bạn chỉ cần có chương trình zenity(1) cài trong hệ thống (cái này gần như là distro nào cũng có mặc định). Nội dung script như sau:
#! /bin/bash
$(zenity --list --column=ide codeblocks geany eclipse netbeans)
exit 0
Sau đó tạo một launcher trỏ đến script này, mỗi khi cần bạn chỉ cần nhấn chuột và bấn 2 phím mũi tên lên xuống rồi Enter để chọn ngay IDE mà mình cần dùng. Vậy là bạn chỉ cần tạo 1 launcher cho 4 IDEs khác nhau, gọn hơn hẳn phải không? Bạn có thể dùng cách này cho các chương trình như soạn văn bản, nghe nhạc xem phim...
|
|
|
|
|
[Question] Re: Các mẹo vặt, thủ thuật hữu ích với GNU/Linux |
03/05/2009 15:34:57 (+0700) | #4 | 179281 |
|
St Konqueror
Member
|
0 |
|
|
Joined: 08/12/2007 00:47:39
Messages: 229
Offline
|
|
4. Tạo thói quen dòng hotkeys để tăng tốc độ làm việc
Đa phần anh em dùng *nix thì quen với bàn phím hơn là với chuột, tuy nhiên khi ở trong môi trường X Window, anh em lại thường hay dùng chuột để mở menu và chọn các phần mềm muốn sử dụng. Do vậy, tớ đề xuất phương án dùng hotkeys để gọi nhanh các phần mềm ngay từ bàn phím, đỡ mất công di chuyển chuột.
Trong tất cả các bộ GUIs của GNU/Linux, theo tớ thấy thì XFCE là có tính năng gán hotkeys một cách đơn giản. Nếu anh em nào không xài XFCE thì có thể xài công cụ rất nhỏ và gọn của Savannah Non-GNU tên là xhotkeys.
Trang chủ: http://www.nongnu.org/xhotkeys/
Tải về: http://download.savannah.nongnu.org/releases/xhotkeys/xhotkeys_0.9.8.3.tar.gz
Anh em nào xài XFCE thì có thể tạo hotkeys tại XFCE Settings Manager >> Keyboard References/Shortcuts. Dù là dùng công cụ nói trên hay là dùng chức năng của XFCE thì phương pháp vẫn giống nhau hoàn toàn.
Nếu anh em nào lo là lỡ tạo 1 hotkey trùng với các hotkeys mặc định của các phần mềm khác thì tớ đề xuất vài cách gán bảo đảm "không đụng hàng":
4a.
Shift + Alt + * với * là một chữ cái mang tính chất gợi nhớ đến phần mềm mà anh em muốn sử dụng. Và tớ chưa hề thấy phần mềm nào trong GNU/Linux nào lại dùng hotkeys dạng Shift + Alt + * cả nên khỏi lo bị trùng.
Tớ ví dụ một vài cách gán hotkeys của tớ:
Shift + Alt + W: Firefox Web browser
Shift + Alt + I: Pidgin IM
Shift + Alt + D: Stardict Dictionary
Shift + Alt + M: Rythmbox Music Player
Shift + Alt + V: Totem Video Player
Ngoài ra tớ có thể kết hợp mẹo 4 này với mẹo 3 ở trên bằng cách tạo 1 hotkey để chạy script đó, ví dụ:
Shift + Alt + C: Compilers Selection
và như vậy sẽ khỏi cần tốn diện tích cho 1 launcher trên taskbar như trong mẹo số 3 nữa, mặc khác cũng chỉ cần 1 hotkey là Shift +Alt +C mà tớ có thể chọn nhanh các IDEs như Geany, Codeblocks, Eclipse, Netbeans chứ không cần phải tạo và nhớ 4 hotkeys khác nhau cho 4 phần mềm.
Cách tạo 1 tổ hợp phím để chạy 1 phần mềm hay 1 script là trỏ đến tập tin binary hoặc script tương ứng.
Đặc biệt với những phần mềm cần quyền root để khởi chạy như Synaptic Package Manager, GParted thì chúng ta có thể gán 1 tổ hợp phím với lệnh "gksu synaptic" hoặc "gksu gparted" chẳng hạn. Ngoài ra để dễ nhớ thì chúng ta có thể dùng các tổ hợp Ctr + Shift + Alt cho các phần mềm đặc biệt như vậy thay cho Shift +alt dùng cho phần mềm ứng dụng thông thường.
4b.
Đó là chuyện của phần mềm, còn về chuyện thư mục, liệu có cách nào để gán hotkeys và nhấn 1 phát là tới ngay thư mục mình cần không? Câu trả lời tất nhiên là có!
Để cho dễ phân biệt với các hotkeys dùng cho phần mềm, tớ để nghị một dạng tổ hợp phím khác, đó là Shift + Ctr + * thay cho Shift + Alt +*
Cách tạo hotkeys cho thư mục thì anh em sẽ cần gõ tên của FileManager muốn dùng (ví dụ là Thunar) rồi kèm thêm tham số là đường dẫn đến thư mục.
Ví dụ cách làm của tớ:
Shift + Ctr + H: Home Directory -- "thunar"
Shift + Ctr + D: Download -- "thunar /dwnl"
Shift + Ctr + L: Library -- "thunar /library"
Shift + Ctr + S: Scores - "thunar /library/guitar-scores"
Shift + Ctr + B: Books - "thunar /library/books"
Đến đây thì anh em đã hiểu quy luật rồi chứ?
Gọn, nhanh và hiệu quả hơn rê chuột chứ, phải không nhỉ?
Chú ý: Tớ đề xuất các tổ hợp Shift + Alt, Shift + Ctr và Ctr + Shift +Alt là trên cơ sở đã tính đến sự thuận tay khi nhấn phím, tần số sử dụng của các loại tổ hợp phím và nhằm tránh trùng lắp...
|
|
|
|
|
[Question] Re: Các mẹo vặt, thủ thuật hữu ích với GNU/Linux |
04/05/2009 03:03:43 (+0700) | #5 | 179332 |
Mr.Khoai
Moderator
|
Joined: 27/06/2006 01:55:07
Messages: 954
Offline
|
|
St Konqueror,
Khoai thì thấy bất cứ desktop manager nào cũng có thể bind một key với một action nào đó. Cái cốt lõi của vấn đề là: Bind được 100 cái keyboard shortcut, nhưng bản thân mình sử dụng được bao nhiêu (và nhớ được bao nhiêu). Còn các application shortcut thì sao?
Bài viết rất chi tiết. Khoai ủng hộ bồ viết thêm về mấy trái tricks này.
khoai |
|
|
|
|
[Question] Re: Các mẹo vặt, thủ thuật hữu ích với GNU/Linux |
04/05/2009 05:09:13 (+0700) | #6 | 179337 |
|
St Konqueror
Member
|
0 |
|
|
Joined: 08/12/2007 00:47:39
Messages: 229
Offline
|
|
Mr.Khoai wrote:
Bind được 100 cái keyboard shortcut, nhưng bản thân mình sử dụng được bao nhiêu (và nhớ được bao nhiêu).
anh Khoai,
Như em em đã nói thì dùng keyboard shortcuts chỉ là một cách nhanh để chạy các ứng dụng hay xài, hay truy cập vào các thư mục thường dùng. Tất nhiên nếu lạm dụng nó, tạo ra đến cỡ cả 100 cái thì sẽ trở nên lãng phí quá mức. Ví dụ bản thân em chỉ dùng khoảng 6 cái shortcuts để chạy mấy phần mềm hay xài nhất và khoảng 5 cái shortcuts cho truy cập thư mục mà thôi. Em nghĩ vậy thì vừa giảm đáng kể diện tích trên thanh taskbar của desktop, đỡ phải đặt icon đầy màn hình và việc truy cập nhanh hơn do giảm thời rê chuột.
Mr.Khoai wrote:
Còn các application shortcut thì sao?
Như em đã có đề cập thì các dạng tổ hợp Shift + Alt và Ctr + Shift như em đề nghị thuộc loại hiếm khi trùng với application shortcut, đồng thời em đã có thói quen dùng shortcut như vậy được cỡ nửa năm rồi và vẫn chưa gặp vấn đề trùng lắp nào cả. Theo em nghĩ, chủ yếu là nếu mình chỉ tạo ra lượng hotkeys vừa đủ cho những công việc hàng ngày và cần thiết nhất thì sẽ dễ dàng kiểm soát được chúng.
Rất cám ơn anh đã quan tâm bài viết. |
|
|
|
|
[Question] Re: Các mẹo vặt, thủ thuật hữu ích với GNU/Linux |
04/05/2009 05:12:16 (+0700) | #7 | 179338 |
|
quanta
Moderator
|
Joined: 28/07/2006 14:44:21
Messages: 7265
Location: $ locate `whoami`
Offline
|
|
St Konqueror wrote:
Trong tất cả các bộ GUIs của GNU/Linux, theo tớ biết thì chỉ có mỗi XFCE là có tính năng gán hotkeys một cách tùy ý này.
--> Thử gọi tên chính xác hơn xem.
--> Thằng nào cũng làm được hết. GNOME có gconf-editor, KDE có Input actions, ...
|
|
Let's build on a great foundation! |
|
|
|
[Question] Re: Các mẹo vặt, thủ thuật hữu ích với GNU/Linux |
04/05/2009 05:35:41 (+0700) | #8 | 179340 |
|
St Konqueror
Member
|
0 |
|
|
Joined: 08/12/2007 00:47:39
Messages: 229
Offline
|
|
quanta wrote:
--> Thử gọi tên chính xác hơn xem.
Desktop Manager? Window Manager hay Desktop Environment tất nhiên là không phải rồi.
quanta wrote:
--> Thằng nào cũng làm được hết. GNOME có gconf-editor, KDE có Input actions, ...
Cám ơn anh, để em edit lại bài viết. Có lẽ là hồi trước xài KDE với GNOME em không chú ý nhiều như XFCE nên không biết.
|
|
|
|
|
[Question] Re: Các mẹo vặt, thủ thuật hữu ích với GNU/Linux |
04/05/2009 05:36:53 (+0700) | #9 | 179341 |
jforum3000
Member
|
0 |
|
|
Joined: 26/08/2007 02:53:39
Messages: 1172
Offline
|
|
quanta wrote:
Thử gọi tên chính xác hơn xem.
http://en.wikipedia.org/wiki/Desktop_environment |
|
|
|
|
[Question] Re: Các mẹo vặt, thủ thuật hữu ích với GNU/Linux |
04/05/2009 05:38:36 (+0700) | #10 | 179342 |
|
St Konqueror
Member
|
0 |
|
|
Joined: 08/12/2007 00:47:39
Messages: 229
Offline
|
|
@jforum3000:
Môi trường desktop có phải ý bạn là Desktop Environment không?
Tớ nghĩ là desktop environment hay window manager đều không phải.
Ví dụ vài Desktop Environment: KDE, CDE, GNOME, LXDE, XFCE...
Ví dụ vài Window manager: Fluxbox, Window Maker, FVWM...
|
|
|
|
|
[Question] Re: Các mẹo vặt, thủ thuật hữu ích với GNU/Linux |
04/05/2009 09:21:02 (+0700) | #11 | 179364 |
|
quanta
Moderator
|
Joined: 28/07/2006 14:44:21
Messages: 7265
Location: $ locate `whoami`
Offline
|
|
St Konqueror wrote:
quanta wrote:
--> Thử gọi tên chính xác hơn xem.
Desktop Manager? Window Manager hay Desktop Environment tất nhiên là không phải rồi.
Ơ, thế "các bộ GUIs" mà em muốn nói đến ở đây là cái gì? |
|
Let's build on a great foundation! |
|
|
|
[Question] Re: Các mẹo vặt, thủ thuật hữu ích với GNU/Linux |
04/05/2009 10:49:22 (+0700) | #12 | 179377 |
|
St Konqueror
Member
|
0 |
|
|
Joined: 08/12/2007 00:47:39
Messages: 229
Offline
|
|
quanta wrote:
Ơ, thế "các bộ GUIs" mà em muốn nói đến ở đây là cái gì?
Ý em là đề cập đến tất cả các giao diện đồ họa dành cho GNU/Linux từ những desktop environment (DE) đồ sộ như KDE, GNOME, XFCE, LXDE,etc.. cho đến những cái chỉ có chứa 1 window manager (WM) đơn lẻ như Fluxbox, Window Maker, FVWM,etc.. Bởi vì mục đích viết bài của em là dùng shortcut trong môi trường đồ họa thôi chứ không phân biệt DE hay WM.
Theo em được biết thì các DEs như KDE, GNOME, XFCE thường là bao gồm window manager, file manager, text editor, widget toolkit, terminal emulator và rất rất nhiều thứ khác. Còn như Fluxbox, Window maker, FVWM, twm lại chỉ là những window managers đơn giản, không kèm theo bất kì ứng dụng nào.
Như vậy thì có nghĩa là DE thì lại bao gồm cả WM trong đó, (ví dụ như Metacity của GNOME, KWin của KDE) nên nếu muốn đề cập chung đến KDE, GNOME cũng như Fluxbox thì thật sự là em không tìm thấy 1 thuật ngữ nào phù hợp hơn là GUI (Graphical User Interface) cả.
PS:
Hơi ra ngoài topic, nhưng mà có lẽ cũng là 1 dịp tốt để bàn luận về vấn đề này.
|
|
|
|
|
|