Các lệnh Shell cơ bản cho các blogger
Hệ thống các lệnh shell là một trong những ngôn ngữ lâu đời nhất để liên lạc hệ thống. Máy tính đã có thể truy cập lời nhắc dòng lệnh từ những ngày đầu của máy tính điện tử, ngay cả trước khi Hệ điều hành được phát triển đầy đủ. Bây giờ vào giữa năm 2011, rõ ràng để xem chúng tôi đã phát triển nhanh như thế nào.
Đối với những người đam mê công nghệ và các blogger hiểu một số lệnh shell cơ bản có thể giúp bạn tiết kiệm rất nhiều thời gian. Hiểu cách tương tác với thiết bị đầu cuối và viết các câu lệnh dòng lệnh để thực hiện các tác vụ là một chủ đề rất lớn. Bạn không bao giờ có thể hiểu đầy đủ các cuộc thảo luận ở đây trong lần thử đầu tiên. Nhưng nếu có thể hãy dành một chút thời gian để nghiên cứu và tập hợp kiến thức về việc sử dụng Giao diện dòng lệnh.
Tôi sẽ chia sẻ một số lời khuyên tuyệt vời dưới đây cho các blogger trên toàn thế giới. Hãy nhớ rằng bất kỳ GUI nào bạn sẽ sử dụng để truy cập các tệp của máy tính có thể có một số dạng dòng lệnh. Đây là cơ sở cho tất cả các tính toán, để nhập lệnh và nhận đầu ra trực tiếp. Trước khi nhảy vào các lệnh và cú pháp, tôi đề nghị chúng ta xóa một số lịch sử trước.
Lệnh Linux Shell - Tóm lại
Có rất nhiều thuật ngữ đang được sử dụng ở đây nó có thể giúp làm rõ một số điều khoản. Dưới đây tôi đã bao gồm một vài mô tả cho một số từ vựng hơi gây tranh cãi.
- vỏ - một chương trình cơ bản nhận đầu vào của người dùng và thực thi các lệnh. shell thường là một thuật ngữ chung đề cập đến bất kỳ giao diện dòng lệnh nào.
- thiết bị đầu cuối - kết nối được thực hiện giữa người dùng cuối và hệ thống máy tính.
- Bash - một loại kịch bản lệnh shell được sử dụng phổ biến nhất trong môi trường Linux.
- chỉ huy - đầu vào được đưa vào máy tính với một nhiệm vụ được thiết lập hoặc danh sách các hướng dẫn.
- hạt nhân - phần mềm nội bộ được viết vào cốt lõi của hầu hết các Hệ điều hành. Hạt nhân có thể được đưa ra các lệnh thông qua bất kỳ cửa sổ shell nào để xử lý các tiến trình máy tính vật lý. I E. cấp phát bộ nhớ, phần cứng, thiết bị ngoài, chức năng CPU, v.v..
Điều quan trọng cần lưu ý là hệ thống này đã có từ rất lâu. Trong thực tế, các chức năng dòng lệnh giữa Linux và Mac OSX là giống hệt nhau nhất. Điều này là do Linux được xây dựng như một Hệ điều hành có nguồn mở miễn phí ngoài hệ điều hành cơ sở Unix. Trong khi đó, Apple ban đầu xây dựng OS X ngoài BSD, đây là một hệ thống Unix.
Windows là một kẻ kỳ quặc đã được viết trên DOS (Hệ điều hành đĩa) cổ điển. Một số lệnh tương tự nhau, nhưng đối với hầu hết các phần, bất kỳ tương tác dòng lệnh nào với HĐH Windows sẽ khác nhiều so với hệ thống Linux / Unix.
Mở một nhà ga mới
Cửa sổ Terminal là hộp đen với con trỏ nhấp nháy háo hức chờ đợi đầu vào của bạn. Điều này có thể được đưa lên thông qua bất kỳ menu GUI hoặc cũng có thể gán các lệnh tắt. Trong GUI Linux, bạn sẽ tìm kiếm một ứng dụng có tên thiết bị đầu cuối hoặc là konsole. Tham khảo trực tuyến với tài liệu phát hành Linux của bạn để biết chi tiết cụ thể, chẳng hạn như Ubuntu hoặc Debian.
Nếu bạn ở trong môi trường Mac, cách nhanh nhất để hiển thị cửa sổ đầu cuối là thông qua Spotlight. lệnh + tùy chọn + thanh không gian sẽ mở ra một tìm kiếm spotlight hoàn toàn mới hoặc bạn cũng có thể nhấp vào kính lúp cho bảng điều khiển thả xuống. Kiểu bên trong “thiết bị đầu cuối” và danh sách kết quả sẽ được đưa vào một cách nhanh chóng.
Bắt đầu
Bây giờ bạn đã mở một cửa sổ đầu cuối, chúng ta có thể bắt đầu! Để bắt đầu, bạn sẽ muốn hiểu điều hướng các thư mục. pwd
là một lệnh liệt kê để xuất thư mục hoạt động của bạn. Đã cặp đôi với ls
bạn có thể phân tích thư mục hiện tại và trả về một danh sách tập tin. Lệnh trước là viết tắt của Print Work Directory trong khi lệnh sau đại diện cho List / Thư mục danh sách. Cả hai đều thú vị để chơi và không làm hỏng hoặc chỉnh sửa bất kỳ tệp nào.
Khi bạn đang xử lý một danh sách tập tin trả về, bạn sẽ nhận thấy một vài điều. Đầu tiên, danh sách sẽ bao gồm cả các tập tin và thư mục. Bất kỳ danh sách nào không có phần mở rộng tài liệu (.jpg, .gz, .rpm) đều được coi là một thư mục. Bạn có thể di chuyển lên và xuống giữa những cái này với CD
chỉ huy. Chữ này là viết tắt của Change Directory và sẽ hoạt động như bạn mong đợi.
Một lối tắt để điều khiển một thư mục trở lên sử dụng cd '
- Cái hay của thủ thuật này là cách bạn có thể điều hướng nhanh chóng giữa các thư mục và tìm chính xác những gì bạn đang tìm kiếm. Mỗi khi bạn chuyển lên một cuộc gọi cấp pwd
để xem bạn đang ở đâu Nếu bạn đang tìm kiếm một thư mục cụ thể cũng gọi ls
để bạn có thể có ý tưởng về nơi sẽ di chuyển tiếp theo.
Để điều hướng trong thư mục gốc, chỉ cần thêm dấu gạch chéo vào URL. Ví dụ: nếu bạn hiện đang ở trong thư mục nhà của mình, bạn không cần phải di chuyển thư mục cho đến khi về đến nhà. Chỉ cần gọi cd / nhà
và nhấn enter để di chuyển vào thư mục gốc của bạn.
Thao tác với tập tin và thư mục
Bây giờ có thể duyệt qua các hoạt động bên trong của hệ thống tệp của bạn, chúng ta nên tham gia vào việc xây dựng các tệp. Nếu bạn không phải là người hâm mộ Giao diện người dùng đồ họa để tạo đường dẫn thư mục trông không khác gì dòng lệnh đơn giản của chúng tôi. mkdir
là viết tắt của Make Directory và là cách nhanh nhất để xây dựng cấu trúc tệp vững chắc.
Nếu bạn đăng nhập với quyền root thì bạn sẽ không gặp vấn đề gì. Tuy nhiên, hãy cảnh giác, vì đôi khi quyền truy cập tệp có thể quá nghiêm ngặt và giới hạn quyền truy cập của bạn để tạo thư mục mới. Kiểm tra trang tài liệu mkdir để biết ví dụ về các đối số.
Để bao quát điều này hơn nữa, mỗi lệnh đi kèm với một tập hợp các đối số có thể. Chúng có thể được thông qua sau khi gõ lệnh để áp dụng các cài đặt bổ sung. Một ví dụ phổ quát là --Cứu giúp
trong đó luôn hiển thị danh sách các tính năng và chủ đề hỗ trợ cho lệnh hiện tại. Hãy thử gõ vào mkdir - giúp đỡ
và xem những gì bạn nhận lại.
Các cp
và mv
lệnh được sử dụng để sao chép và di chuyển các tập tin, tương ứng. Bạn sẽ cần phải có cả hai thư mục đã được viết ra và chỉ về nơi tệp sẽ đi. Mỗi lệnh yêu cầu 2 đối số, đầu tiên là một tệp được chọn và thứ hai là đích mới để sao chép hoặc di chuyển vào. Tương tự tên tập tin rm
có thể được sử dụng để xóa (xóa) tập tin và rm -rf thư mục_name /
để loại bỏ các thư mục. Nhưng hãy cẩn thận ở đây vì không có tính năng hoàn tác trong vỏ!
Phù hợp với mẫu Wildcard
Có thể di chuyển các tập tin và sao chép các thư mục cung cấp một sự thuận tiện. Nhưng cuối cùng việc đưa kiến thức này vào sử dụng tốt đòi hỏi một chút tinh tế. Ban đầu, bạn đang sử dụng kịch bản lệnh shell để tự động hóa các tác vụ lớn mà bạn không muốn tự xử lý.
Với các lệnh ký tự đại diện, bạn sẽ có thể nhắm mục tiêu nhiều tệp thay vì một tên. Khi nhập URL mục tiêu của bạn, có hai biểu tượng bổ sung để chơi xung quanh. Dấu hoa thị (*) được sử dụng để biểu thị bất kỳ số lượng ký tự đại diện nào, trong khi dấu chấm hỏi (?) Biểu thị bất kỳ ký tự đơn nào.
Chân đế cũng có thể được sử dụng để biểu thị các mẫu. Trong một bộ dấu ngoặc, bạn có thể xác định giới hạn cho các ký tự hoặc các ký tự đại diện có thể phù hợp. Bằng cách áp đặt một bộ dấu hai chấm [::] cả trước và sau dấu ngoặc, bạn có thể chọn từ một số tiền chất. Bao gồm các [: alnum:]
cho chữ và số [: alpha:]
chỉ cho các ký tự chữ cái Nếu bạn đang tìm cách chỉ nhắm mục tiêu số [: chữ số:]
cũng hoạt động tốt.
Toàn bộ hệ thống này có vẻ trừu tượng mà không có ví dụ, vì vậy tôi đã cung cấp một vài điều dưới đây.
- một * - khớp với tất cả các tên tập tin bắt đầu bằng chữ cái “một”
- foo * .txt - khớp với tất cả các tệp văn bản bắt đầu bằng các chữ cái “foo”. Lưu ý điều này sẽ chỉ trả về các tệp văn bản, ngay cả khi bạn có các thư mục khác bắt đầu bằng foo
- ảnh?? - phù hợp với tất cả các tệp và thư mục bắt đầu bằng ảnh từ và theo dõi với chính xác hơn 2 ký tự
- [XYZ]? - khớp với bất kỳ tên tệp nào bắt đầu bằng x, y hoặc z và theo sau là chính xác thêm 1 ký tự
Tôi nghĩ rằng bạn có được điểm ở đây. Hệ thống ký tự đại diện rất phức tạp, chắc chắn nó không dành cho người yếu tim. Đừng hy vọng bản thân sẽ hiểu đầy đủ năng lực ở đây sau khi chỉ dành một ngày trong thiết bị đầu cuối. Phải mất rất nhiều thực hành và lặp đi lặp lại để có thể thành thạo trong kịch bản shell và chú thích ký tự đại diện. Xem lại trang thông tin về Tệp tu để biết thêm một số ví dụ và thông tin.
Nén và lưu trữ tệp
Xây dựng và tạo tập tin lưu trữ chỉ là một phần của trải nghiệm máy tính hiện đại. Tôi thường xuyên gửi email và tải xuống kho lưu trữ .zip mới mỗi ngày. Chúng bao gồm đồ họa, biểu tượng, mã thư viện, phông chữ, mockup Photoshop, và nhiều hơn nữa. Hành động lưu trữ thư mục không chỉ làm giảm kích thước tệp mà còn giúp vận chuyển dễ dàng hơn rất nhiều.
Khi làm việc trong Linux / Unix, có một vài lệnh bạn có thể sử dụng để lưu trữ dữ liệu. Hai người thường xuyên chạm vào là khóa kéo và gzip. Sự khác biệt không quá lớn và chắc chắn không đủ đáng chú ý để yêu cầu cái này hơn cái kia. Chúng chỉ là các cơ chế khác nhau để nén, lưu trữ dữ liệu và lược đồ tệp.
Mỗi lệnh này có một đĩa tuyệt vời của các đối số có thể. Bạn có thể xem danh sách đầy đủ từ trang thông tin Linux của About trên lệnh zip. zip -r có thể là câu lệnh shell được biết đến rộng rãi nhất, đại diện cho việc đệ quy kéo lên tất cả các tệp và nén chúng lại với nhau. Điều này có nghĩa là nếu bạn chỉ định một lệnh như zip -r myfolder newarchive
bạn sẽ lấy tất cả các tệp ra khỏi myfolder và thêm chúng vào một kho lưu trữ mới có tên newarchive.zip. Nếu không có -r, bạn sẽ cần chỉ định từng tên tệp riêng lẻ trong định dạng danh sách khung [file1.jpg file2.jpg, v.v.]. Nói về thời gian cạo râu!
Bây giờ lệnh cho gzip hoạt động rất giống nhau và chia sẻ rất nhiều đối số tương tự. Lựa chọn sử dụng gzip qua zip thực sự là một lựa chọn cá nhân và sẽ không can thiệp vào bất kỳ cấu trúc tệp nào của bạn. Nếu bạn đang di chuyển các tệp giữa các hệ điều hành khác nhau, tôi khuyên bạn nên gắn bó với .zip vì nó được chấp nhận nhiều hơn trong cộng đồng Windows. Nhưng chúng ta đang sống trong thời đại phần mềm bội thu và các dự án nguồn mở, vì vậy việc nói rằng Windows không thể xử lý các tài liệu lưu trữ .gz là không đúng. Nhưng định dạng tệp lưu trữ không phổ biến.
Khi nhận được lưu trữ nén, bạn cũng có thể giải nén chúng vào các thư mục mới chỉ từ dòng lệnh. Cả hai giải nén và súng ngắn là các đối tác với các lệnh lưu trữ ban đầu của họ. Tương tự, danh sách các đối số chỉ là dài, nếu không dài hơn. Tuy nhiên, lệnh giải nén cơ bản chỉ cần một vị trí tệp để thực hiện hành động. Nếu bạn cảm thấy thoải mái khi làm việc với phần mềm lưu trữ, phương pháp này sẽ hoàn toàn giống nhau trong mọi môi trường Mac OS X.
Làm việc như một siêu người dùng
Nếu bạn đang làm việc với thiết bị đầu cuối rất nhiều thì quyền truy cập siêu người dùng sẽ có ích. Đặc biệt là một nhà phát triển web hoặc blogger, vì bạn sẽ thấy các lỗi cấp phép trở nên cực kỳ khó chịu sau lần thứ ba hoặc thứ tư.
Chắc chắn có thể đăng nhập trực tiếp vào tài khoản root và chạy các lệnh đầu cuối từ đó. Tuy nhiên, điều này được hiểu là thực tiễn xấu trong vương quốc Linux, vì người dùng root chỉ nên được sử dụng trong trường hợp khẩn cấp để khắc phục hoặc sửa lỗi hệ thống. Hoặc nếu bạn chỉ quên mật khẩu đăng nhập chính của bạn!
Bây giờ để vào hệ thống như siêu người dùng, bạn sẽ cần mật khẩu root. Trong cửa sổ terminal của bạn chỉ cần gõ su và nhấn enter. Điều này là viết tắt của người dùng thay thế và không có bất kỳ đối số nào sẽ cho rằng bạn đang tìm cách truy cập root. Nhập mật khẩu và nhấn enter, bạn sẽ được chuyển đến một dòng mới chạy bên dưới root @ máy tính của bạn
. Để trở lại tài khoản của bạn, hãy sử dụng lối thoát hiểm
chỉ huy.
Bây giờ điều này không hoạt động tốt cho phần lớn các hệ thống Linux / Unix. Nhưng khi bạn làm việc trên một hộp Linux chạy Ubuntu hoặc một hệ điều hành tương tự, bạn sẽ nhận thấy những thay đổi đối với giao diện siêu người dùng. Thay vào đó, người dùng Ubuntu sẽ làm việc với một lệnh sudo
thay thế quyền truy cập siêu người dùng chỉ bằng một lệnh.
Điều này có nghĩa là bạn sẽ không được đăng nhập vào thiết bị đầu cuối với tư cách là siêu người dùng, nhưng có thể chạy bất kỳ lệnh nào với tư cách là siêu người dùng bằng cách nối thêm tiền tố sudo
. Xin lưu ý rằng Ubuntu là một hệ điều hành lựa chọn sử dụng sudo
chỉ huy. Thiết bị đầu cuối OS X của Apple là một hệ thống khác sử dụng lệnh siêu người dùng sudo. Sau khi bạn nhấn enter, bạn sẽ được yêu cầu nhập lại mật khẩu gốc và sau đó, lệnh sẽ thực thi và đưa bạn trở lại một dòng mới nếu thành công.
Nhận quyền sở hữu đối với các tập tin
Một vấn đề khác với quyền bắt nguồn từ truy cập tập tin. Tôi không thể tưởng tượng được mình đã làm việc thay đổi tập tin bao nhiêu lần nhưng không thể áp dụng chúng vì không đủ quyền. Bạn sẽ muốn thực hiện bất kỳ thay đổi quyền sở hữu nào dưới quyền root, nếu có thể.
Lệnh chown
Đối với chủ sở hữu thay đổi khá đơn giản và hoạt động trong hầu hết các môi trường Linux và Unix. Đối với người dùng Ubuntu, bạn sẽ cần chạy sudo
trước bất kỳ chown
các lệnh, trừ khi bạn đăng nhập bằng root.
Chỉ có hai đối số riêng lẻ cần thiết để thực hiện thành công. Trước tiên, bạn sẽ cần nhập tên người dùng sẽ được cấp quyền sở hữu tệp, theo sau là khoảng trắng và thư mục tệp. Hệ thống sẽ hoạt động trong thư mục làm việc hiện tại của bạn để chọn tệp. Nhưng nếu bạn muốn bỏ qua hệ thống phân cấp tổng thể, bạn có thể bắt đầu từ gốc bằng một dấu gạch chéo trong URL của mình.
Hệ thống sở hữu tập tin áp dụng hiệu quả hơn rất nhiều trong bảo trì máy chủ. Nếu bạn có quyền truy cập shell vào máy chủ, bạn chắc chắn sẽ cần phải hiểu thao tác tệp và chiếm quyền truy cập tệp. Ví dụ, việc cài đặt nhiều tập lệnh web phổ biến yêu cầu chỉnh sửa thông tin cơ sở dữ liệu. Việc sở hữu những tập tin này sẽ giúp bạn tránh khỏi những tác hại nếu tin tặc xâm nhập vào bảng điều khiển máy chủ.
Để tất cả chúng cùng nhau
Bây giờ với tất cả các lệnh mới này, bạn nên bắt đầu thử nghiệm nhanh trong bảng điều khiển bạn chọn. Một nơi tuyệt vời để bắt đầu xây dựng kiến thức của bạn là các ký tự đại diện và chọn các tệp từ trong HĐH của bạn. Với tư cách là một người dùng DOS và Linux, ban đầu tôi sẽ khuyên bạn nên thực hành với các lệnh nhẹ hơn, để không gặp rủi ro cho các tệp và thư mục của bạn.
Những điều tồi tệ có thể xảy ra với rm
lệnh và một số trận đấu ký tự đại diện bị lỗi. Nếu bạn dự định xóa bất cứ thứ gì, hãy thử chạy bộ chọn ký tự đại diện của bạn bên dưới ls
Đầu tiên. Điều này sẽ trả về danh sách các tệp bạn muốn xóa và nếu mọi thứ trông có vẻ thân mật, bạn luôn có thể chạy lệnh ngay sau đó! Trong bất kỳ cửa sổ đầu cuối nào, chỉ cần nhấn phím mũi tên lên để đưa đầu vào lệnh cuối cùng của bạn trở lại. Xóa ls và thay thế bằng rm thì bạn tốt đi!
Có rất nhiều bạn có thể thực hiện trong dòng lệnh. Nhưng cũng có nhiều thứ bạn không thể. Hãy khiêm tốn với cách sử dụng của bạn và đừng quá nhiệt tình để trở thành ông vua công nghệ. Bạn chắc chắn có thể bắt đầu sử dụng CLI (Giao diện dòng lệnh) cho hầu hết tất cả các tác vụ hiệu suất của bạn. Nhưng khá trung thực, có nhiều điều bạn có thể làm nhanh hơn từ góc độ GUI. Nếu bạn nghiên cứu và chơi xung quanh với một số lệnh, bạn sẽ nhanh chóng nhận ra tác vụ nào hoạt động tốt trong thiết bị đầu cuối và được lưu tốt nhất cho chuột và bàn phím.
12 lệnh Shell tất cả các blogger nên biết
1. Xóa các thư mục lồng nhau
Với lệnh rm, bạn có thể xóa (hủy liên kết) tệp và thư mục khỏi ổ cứng. Nhưng những gì về toàn bộ rất nhiều thư mục lồng nhau? Đặc biệt nếu mỗi bộ thư mục chứa các tệp tiếp theo và dữ liệu không khớp. Tùy chọn -r sẽ đệ quy lướt qua tất cả các tệp và thư mục tiếp theo để xóa dữ liệu và thư mục.
Nếu bạn thêm vào tùy chọn -f, điều này sẽ buộc lời nhắc ở lại trong các lệnh của bạn và không nhắc bạn cho bất kỳ hộp thoại nào. Không có đầu ra trả về và sẽ bỏ qua các tệp không tồn tại trong tất cả các thư mục con. Toàn bộ lệnh trong hành động có thể trông như thế này:
rmdir -r -f / nhà / bạn / tài liệu / mydir1 / 2009
2. Kết nối với cơ sở dữ liệu
Khi bạn thường xuyên truy cập hệ thống phụ trợ trang web, bạn sẽ muốn đảm bảo kết nối an toàn được tạo. Điều này tăng gấp đôi cho các kết nối cơ sở dữ liệu nơi lưu trữ thông tin người dùng và trang web. Nhưng nếu bạn đang làm việc với cài đặt cơ sở dữ liệu cục bộ, có lẽ bạn có thể thoát khỏi các yêu cầu bảo mật ít hơn nhiều.
Tùy thuộc vào hệ thống bạn đang sử dụng sẽ có cú pháp khác nhau để điều chỉnh. Cuộc gọi cơ bản để kết nối vào cơ sở dữ liệu nói chung vẫn giống nhau. Bạn sẽ cần tên của cơ sở dữ liệu bạn đang truy cập, tên người dùng, mật khẩu và có thể là tên máy chủ cơ sở dữ liệu (thường là localhost). Tôi đã thêm hai lệnh shell để kết nối, một cho MySQL và một cho Sybase.
mysql -u tên người dùng -h localhost -p
Ở đây bạn chỉ cần nhấn enter mà không cung cấp mật khẩu. Sau đó, nếu lệnh shell truy cập thành công cơ sở dữ liệu đó và lưu trữ thì nó sẽ nhắc mật khẩu của bạn. Nhập này trên dòng mới và nhấn enter một lần nữa. MySQL sẽ chào đón bạn khi thành công.
isql -U tên người dùng -P <Sybase là một ví dụ tuyệt vời khác của phần mềm cơ sở dữ liệu. Bạn có thể truy cập các loại cơ sở dữ liệu này bằng lệnh isql tương tự như mysql ở trên. Ở đây bạn chỉ cung cấp tên người dùng và mật khẩu, sau đó gọi sử dụng lệnh chọn cơ sở dữ liệu của bạn.
3. Sao lưu cơ sở dữ liệu
Bây giờ bạn đã kết nối vào cơ sở dữ liệu, có rất nhiều lệnh bạn có thể chạy. Lý tưởng nhất là bạn sẽ muốn gắn bó với các thủ tục SQL đơn giản và không phải trực tiếp thêm người dùng hoặc bài viết mới. Nhưng bao giờ xem xét sao lưu toàn bộ cấu trúc cơ sở dữ liệu của bạn? Các lệnh này khá phức tạp, nhưng với 15-30 phút nghiên cứu, bạn có thể tìm ra chúng.
Sybase phức tạp hơn nhiều và yêu cầu một số lệnh shell nặng. Nếu bạn kiểm tra các tập lệnh sao lưu cơ sở dữ liệu của Ed Barlow, tôi tích cực, bạn sẽ có thể làm việc với các gói của anh ấy. Ông phác thảo một số giải pháp cơ bản để kết xuất tất cả các bảng cơ sở dữ liệu, kết xuất nhật ký lỗi, thống kê cơ sở dữ liệu, nhật ký chạy, v.v ... Nó khá mạnh mẽ và hoạt động tốt cho hầu hết mọi thứ bạn cần.
Cơ sở dữ liệu MySQL là một kiểu tương tự và yêu cầu một kịch bản shell khá dài. Nội dung yêu cầu chọn một thư mục cục bộ để lưu từng bản sao lưu và gọi một cho vòng lặp trong BASH. Điều này sẽ lặp qua mọi cơ sở dữ liệu và lấy ra tất cả các bảng dưới dạng tệp lưu trữ .gz bằng cách sử dụng
$ MYSQLDUMP
và$ GZIP
. Mã đầy đủ có thể được tải xuống tại bài viết Shell Script của nixCraft nhắm vào các bãi chứa MySQL. Chỉ cần chỉnh sửa cơ sở dữ liệu / thông tin đăng nhập của bạn và lưu dưới dạng mysqlbackup.sh ở đâu đó trên ổ cứng của bạn. Bạn có thể chạy thủ công hoặc thay thế lên lịch công việc lương thấp cho mỗi ngày, tuần, tháng, v.v..4. Khôi phục cơ sở dữ liệu
Bây giờ chúng ta đến để khôi phục lại bản sao lưu của một tệp cơ sở dữ liệu. Điều này không phức tạp như bạn nghĩ, mặc dù từ vẻ ngoài của mã trước đó tôi có thể hiểu tại sao. Nhưng hãy xem xét rằng việc tải lên các tệp trước đó dễ dàng hơn nhiều so với kết nối và kéo dữ liệu từ máy chủ từ xa.
Trong Sybase, bạn sẽ thực hiện nhiều công việc hơn nữa. Nhưng lệnh cơ bản là
tải dbname cơ sở dữ liệu
. Bạn có thể theo dõi điều này với các tùy chọn khác và tất nhiên bạn sẽ cần phải kết nối với cơ sở dữ liệu trước khi nó hoạt động. Nếu bạn bị kẹt hãy thử sử dụng tệp tài liệu Sybase làm điểm tham chiếu.Với MySQL, bạn chỉ cần một lệnh duy nhất nếu bạn đã đăng nhập. Hoặc ngay cả khi bạn không kết nối và gọi khôi phục đồng thời. Điều này là do bản sao lưu của bất kỳ tệp cơ sở dữ liệu MySQL nào về cơ bản là mã SQL có thể xây dựng lại cơ sở dữ liệu từ đầu. Đây là lý do một số bản sao lưu rất lớn và thường quá lớn để tải lên qua giao diện web như phpMyAdmin.
Bạn có thể gọi lệnh mysql bằng một dòng duy nhất. Như trước khi bạn nhập -u và -p nhưng chỉ điền vào tên người dùng vì mật khẩu của bạn được nhắc sau đó. Mã dưới đây sẽ hoạt động hoàn hảo:
mysql -u tên người dùng -p cơ sở dữ liệu < /path/to/dump_file.shCác biến duy nhất bạn muốn thay thế là tên người dùng, cơ sở dữ liệu và đường dẫn sao lưu của bạn. Tên người dùng và máy chủ cơ sở dữ liệu giống như trước đây khi bạn kết nối. Vì vậy, bạn sẽ chỉ cần tìm nơi lưu trữ cơ sở dữ liệu của mình để bạn có thể cập nhật nó.
5. Tải trực tiếp Shell
Các
wget
lệnh rất thú vị và cung cấp rất nhiều tùy chọn. GNU wget là một tiện ích không tương tác để tải xuống các tệp từ Internet. Điều này bao gồm các giao thức HTTP, HTTPS và FTP tiêu chuẩn trong hỗn hợp.Để tải xuống một tệp cơ bản, bạn sẽ gõ wget tên tệp trong đó tên tệp là vị trí của tệp của bạn. Đây có thể là bất cứ điều gì trực tuyến, chẳng hạn như https://assets.hongkiat.com/uploads/v4s/n_logo.gif cho tệp logo Hongkiat .gif. Nếu bạn tạo một tập tin shell shell chứa nhiều biến, bạn có thể tải xuống các video, hình ảnh, âm nhạc hoặc nội dung khác trong nền trong khi bạn làm việc. Và hãy nhớ rằng bạn có thể sử dụng các ký tự đại diện ở đây như * và? để kéo các thư mục lớn của các tập tin.
Bây giờ bạn cũng có thể muốn tải xuống nội dung qua FTP. Tuy nhiên, phần lớn thời gian bạn sẽ không làm việc với các máy chủ ftp công cộng và sẽ cần tên người dùng / mật khẩu. Cú pháp đăng nhập hơi khó hiểu, nhưng tôi đã thêm một ví dụ nhỏ bên dưới.
wget ftp: // tên người dùng: [email protected]/files/folder/*.jpg6. Nén thư mục
Chúng tôi đã đi qua nén một chút trước đó, nhưng chỉ trong mô tả. Có một số ví dụ nguyên thủy rất cơ bản về nén tệp mà bạn có thể gọi từ dòng lệnh ở bất cứ đâu. Tôi khuyên bạn nên sử dụng lệnh zip nếu bạn chưa quen với Shell, chỉ vì hệ thống Linux có thể gây nhầm lẫn. Tuy nhiên, nếu bạn muốn sử dụng gzip hoặc thay thế khác, hãy thoải mái.
Bất cứ khi nào bạn gọi một lệnh zip hoàn chỉnh, bạn sẽ muốn bao gồm tất cả các tệp trong kho lưu trữ mới của mình. Tham số thứ hai từ lệnh zip là thư mục bạn muốn hoặc thay vào đó là danh sách ngắn các tệp cần nén. Thêm tùy chọn -r đi qua đệ quy cấu trúc thư mục của bạn để bao gồm mọi tệp. Dưới đây là ví dụ hoàn hảo về nén thư mục nhỏ.
zip -r newfile_name.zip / path / to / content / thư mục7. Tìm và thay thế hàng loạt
Bất cứ khi nào bạn có một bộ sưu tập lớn các tập tin, bạn thường có chúng được dán nhãn hoặc đánh số theo một mẫu tương tự. Ví dụ: với một bộ sưu tập lớn các biểu ngữ trang web, tất cả chúng có thể bao gồm tiền tố hoặc hậu tố 'biểu ngữ'. Điều này có thể được thay thế hàng loạt trong tất cả các tệp bằng lệnh shell sed.
sed là một trình soạn thảo luồng được sử dụng để thực hiện các chuyển đổi và chỉnh sửa văn bản cơ bản trên các tệp. Nó được gọi là lệnh hiệu quả nhất vì nó sẽ quét qua một thư mục gần như ngay lập tức. Dưới đây là một số mã ví dụ sử dụng lệnh.
sed -i 's / abc / xyz / g' * .jpgVì vậy, ở trên chúng tôi sẽ phù hợp với các tệp không tồn tại, nhưng trong ví dụ của chúng tôi, chúng tôi đang tìm cách thay thế một bộ hình ảnh. Chúng tôi xem trong thư mục và có kế hoạch thay thế tất cả các hình ảnh .jpg có chứa abc và thay thế XYZ. Với tùy chọn -i, chúng tôi có thể tự động chỉnh sửa các tệp tại chỗ mà không yêu cầu sao lưu. Có một cái nhìn nhanh vào tài liệu sed để biết thêm.
8. Tạo tập tin mới
Nó có thể là đáng tiếc để tạo ra một đống các tập tin tương tự trong một lần ngồi. Nếu bạn muốn tạo một tập hợp lớn các tài liệu hoặc tệp văn bản mà không cần sử dụng phần mềm, dòng lệnh là một công cụ tuyệt vời. Hãy xem xét một số trình soạn thảo theo ý của bạn trực tiếp từ shell.
vi / vim
có thể là trình soạn thảo tốt nhất và hữu ích nhất cho Linux CLI. Có những người khác như trình soạn thảo văn bản JOE. Bạn cũng có thể tạo một tệp từ lệnh cat, mặc dù bạn bị giới hạn chỉ xem nội dung tệp và không chỉnh sửa bất cứ thứ gì.Với vi bạn sẽ chỉ cần gọi một dòng mã. Tôi đã thêm mã bên dưới, đơn giản là lệnh vi theo sau là tên tệp mới của bạn. Khi bạn ở trong trình soạn thảo vi, hãy nhập 'i' để chỉnh sửa và chèn văn bản mới. Để lưu và thoát một tập tin, nhấn phím esc theo sau dấu hai chấm + x (: + x) và nhấn enter. Đó là một sự kết hợp kỳ lạ, nhưng nó cực kỳ an toàn và một khi bạn nắm bắt được những điều bạn không bao giờ muốn quay lại!
vi /home / you / myfile.doc9. Công cụ mạng Shell
Dòng lệnh shell cung cấp khá nhiều công cụ để kết nối mạng. Các ping lệnh có thể được sử dụng theo sau bởi một địa chỉ IP hoặc web để kiểm tra trạng thái của một trang web. Một yêu cầu gói được gửi đến máy chủ và nếu bạn nhận được phản hồi shell sẽ xuất thời gian và chi tiết máy chủ. Điều này có thể hữu ích để kiểm tra xem một trang web bị hỏng hay tương tự nếu kết nối Internet của bạn bị hỏng.
Nếu bạn muốn kiểm tra cài đặt hiện tại của mình, hãy gọi ifconfig chỉ huy. Điều này rất giống với lệnh ipconfig trong Windows DOS. Nhưng với shell ifconfig, bạn được cung cấp nhiều tùy chọn hơn để định cấu hình và triển khai cài đặt DNS tùy chỉnh. Một lệnh rất giống netstat cũng hữu ích để hiển thị các cổng và mạng mở hiện tại của bạn.
10. Quản lý gói
Khi làm việc với các phần mềm cài đặt qua Shell, bạn sẽ chủ yếu làm việc trong 2 phiên bản Unix khác nhau. Trình quản lý gói RPM (RPM) và Trình quản lý Debian (DEB) là các phiên bản được biết đến rộng rãi nhất. Chúng được cập nhật với các gói mới nhất mà bạn có thể tải xuống từ trang nhân bản gần nhất.
Các lệnh rất giống nhau để cài đặt trên cả hai phiên bản. yum và vòng / phút là hai lệnh dành riêng cho trình quản lý gói cũ. Mã của họ theo sau
tên gói yum
. Ví dụ:yum cài đặt tên góiĐối với người dùng Debian / Ubuntu, bạn sẽ sử dụng Trình quản lý gói Debian. Một lần nữa, cú pháp tuân theo một định dạng tương tự trong đó bạn gọi ID quản lý gói, lệnh và theo dõi tất cả với tên gói. Hai ví dụ dưới đây được định dạng để cài đặt và nâng cấp, tương ứng.
apt-get cài đặt tên gói apt-get nâng cấp mypackage111. Tạo danh sách các tệp lớn nhất
Tổ chức là những gì giúp bạn chạy trong tất cả các giờ của phiên làm việc của bạn. Khi bạn bắt đầu mất dấu các tập tin và nhận thấy các thư mục của bạn trở nên quá lớn, đó là thời gian để dọn dẹp mùa xuân. Các
ls
lệnh này rất hữu ích trong shell vì nó cung cấp cho bạn một viễn cảnh lớn hơn vào một số thư mục của bạn.Điều này bao gồm sắp xếp các loại tệp cụ thể và định dạng tệp. Nếu bạn muốn tìm các tệp lớn nhất trong bất kỳ thư mục nào trên ổ cứng của mình, chỉ cần áp dụng lệnh bên dưới.
ls -lSrhCó 4 tùy chọn riêng biệt được đính kèm với lệnh này. -l được sử dụng để liệt kê đầy đủ dữ liệu đầu ra. -S sẽ sắp xếp toàn bộ danh sách theo kích thước tệp, ban đầu từ lớn nhất đến nhỏ nhất. Bằng cách áp dụng -r, sau đó chúng tôi đảo ngược thứ tự sắp xếp để các tệp lớn nhất trong đầu ra của bạn sẽ kết thúc ở dưới cùng. Điều này là tốt vì cửa sổ shell sẽ để bạn ở dưới cùng của các lệnh đầu ra của bạn dù sao, vì vậy nó dễ dàng hơn để xóa qua danh sách. -h chỉ đơn giản là viết tắt của dữ liệu đầu ra có thể đọc được của con người, do đó bạn sẽ thấy kích thước tệp tính bằng megabyte (MB) thay vì byte.
12. Tạo một email khi đang di chuyển
Nếu bạn đang sử dụng bất kỳ phần mềm nào cho tài khoản e-mail của mình, lệnh này sẽ giúp bạn tiết kiệm được nhiều thời gian. Thường thì bạn biết địa chỉ e-mail của một người mà bạn muốn gửi nhưng không muốn dành thời gian mở ứng dụng thư khách của bạn. các
gửi thư đến:
lệnh sẽ hoạt động chính xác giống như từ dòng lệnh như từ bất kỳ trình duyệt hoặc trang web nào.Ngay cả khi bạn không biết địa chỉ bạn muốn gửi, chỉ cần thêm bất cứ điều gì. [email protected] làm việc tuyệt vời Hoặc sáng tạo với nội dung phụ của riêng bạn. Dù bằng cách nào, sau khi bạn gõ lần truy cập này, hãy nhập để mở một cửa sổ tin nhắn e-mail hoàn toàn mới với địa chỉ người gửi của bạn. Bạn có thể sửa đổi chủ đề / cơ thể và CC của bạn theo nhu cầu của riêng bạn ngay lập tức.
mailto: [email protected]Tài nguyên bên ngoài
Để tiếp tục con đường của kịch bản shell đòi hỏi rất nhiều kiên nhẫn và cống hiến. Có hàng trăm lệnh để hiểu và rất nhiều danh mục con để tham gia. Dành thời gian để loay hoay trong một cửa sổ giao diện điều khiển và xem bạn thích quy trình làm việc nhanh như thế nào. Hy vọng rằng các liên kết dưới đây có thể cung cấp thêm thông tin để giúp bạn tiếp tục viết kịch bản shell trong Linux và Mac OS X.
- 10 lệnh Shell hàng đầu của tôi
- Các lệnh Linux - Hướng dẫn tham khảo thực tế
- Xử lý các đối số dòng lệnh
- 40 Lệnh Mac OS X Shell và các lệnh thiết bị đầu cuối hữu ích
- Các lệnh Linux và các lệnh Shell
- Linux / Unix Cheat Sheets - Bộ sưu tập cuối cùng
- Danh sách 175 lệnh Mac OS X Terminal
- Chuyển sang Ubuntu từ Mac OS X
Phần kết luận
Đã dành thời gian cho cả 3 Hệ điều hành chính, tôi phải nói rằng tất cả chúng đều tuyệt vời theo cách riêng của chúng. Nhưng nếu bạn đang làm việc với HĐH Linux, thiết bị đầu cuối sẽ trở nên quan trọng như bất kỳ GUI nào. Tôi cảm thấy rất quan trọng để nhận ra ngay cả các lệnh cơ bản nhất và thử làm việc trong giao diện dòng lệnh để thực hành.
Những người mới làm quen với hệ thống chắc chắn sẽ gặp rắc rối. Đây là một phần bình thường của quá trình học tập, nhưng hãy giữ trí thông minh của bạn và không bao giờ bỏ cuộc! Xây dựng bản thân để mong đợi những mục tiêu vững chắc, thực tế. Học kịch bản shell sẽ mất rất nhiều công việc ban đầu. Nhưng trong vòng một hoặc hai tuần, bạn nên nắm vững một số điều cơ bản và bắt đầu sử dụng thiết bị đầu cuối một cách hoàn hảo (tốt, chủ yếu). Nếu bạn có bí mật hoặc mẹo tuyệt vời để làm việc trong Linux / Unix CLI, vui lòng chia sẻ chúng trong khu vực thảo luận bên dưới.