atBir senaryomun içinde kullanmaya çalıştım ve yazdırıyor:
uyarı: komutlar / bin / sh kullanılarak yürütülür
İstersem farklı kabuğu nasıl kullanırım?
atBir senaryomun içinde kullanmaya çalıştım ve yazdırıyor:
uyarı: komutlar / bin / sh kullanılarak yürütülür
İstersem farklı kabuğu nasıl kullanırım?
Yanıtlar:
Linux altında, ather zaman /bin/shfavori kabuğunuzdan ziyade belirtilen komutları yürüteceği konusunda sizi uyarır . Bu mesajı gizleyemezsiniz, kaynak kodunda sabit olarak kodlanmıştır.
İletdiğiniz komut yorumlanır /bin/sh. Bu komut isterseniz bir komut dosyasının yolu olabilir; daha sonra /bin/shkomut dosyası programını çalıştırarak komut dosyasının yorumlayıcısının başlatılmasına ve komut dosyasının yorumlanmasına neden olur. Betiğin dili, onu başlatan programdan tamamen bağımsızdır. Örneğin, bir bash betiği (örn. İle başlayan bir betik #!/bin/bash) yürütmek istiyorsanız , betiğin yolunu geçip atilgisiz iletiyi yok sayın.
sen-si olmak-e farklı bir kabuktan komut dosyası shebang çalışan bunu başarabilirsiniz . Bazı tipik shebang hatları:
#!/bin/sh — Execute the file using sh, the Bourne shell, or a compatible shell #!/bin/csh -f — Execute the file using csh, the C shell, #!/usr/bin/perl -T — Execute using Perl with the option for taint checks #!/usr/bin/php — Execute the file using the PHP command line interpreter #!/usr/bin/python -O — Execute using Python with optimizations to code #!/usr/bin/ruby — Execute using Ruby
Belirli zamanlarda komut dosyası çalıştırmak için bir cronjob eklemenizi öneririm
Misal:
Aşağıdaki satır, test.pl (görünüşte bir Perl betiği) kullanıcı programını gece yarısında, gece yarısında, saat 02:00, 04:00, 06:00, 08:00 ve benzeri saatlerde çalıştırır:
0 * / 2 * * * / ev / kullanıcı adı / test.pl
#!/bin/sh....?
#!/usr/bin/perlzaten senaryomda shebang ama uyarı alıyorum