Daha çox

R.mask bir toplu fayldan çağırıla bilərmi?


Bir toplu iş faylı tərəfindən adlandırılan bir shell skriptindən istifadə edirəm. Kabuk skriptində proqramım üçün istifadə etdiyim GRASS skriptləri var. R.mask skriptini hər dəfə istifadə etdiyim zaman səhv göstərilirr.mask: əmr tapılmadı.

R.mask bir toplu fayldan çağırıla bilərmi? Bir toplu faylı və shell skriptindən istifadə edərək r.mask-ı necə istifadə edə bilərəm?


Bir toplu iş faylı tərəfindən adlandırılan bir qabıq skripti? Beləliklə, Windows qutusuna bağlı olan * nix qutuda GRASS işlədirsiniz ...

Hər iki halda da, GRASS quraşdırılmış maşın üzərində mühiti düzgün qurduğunuzdan əmin olmalısınız. Ən azı PATH mühit dəyişəninin GRASS skriptlərinin tapıla biləcəyi qovluğu təmin etməsinə ehtiyac var. Mənim Ubunutu maşınımda/ usr / lib / grass64 / scripts /ancaq quraşdırma fərqli ola bilər.

GRASS mühitinin qurulması və shell skriptlərinin işlədilməsinə dair çox faydalı məlumatlar üçün buraya baxın.


WinGRASS ilə işlədiyinizi başa düşürəm. WinGRASS 6 varsa, cəhd edinr.mask.batvə yar.mask.shzəng etmək.


App1.exe-nin harada yerləşdiyindən bir az anlaşılmazsınız.

Qovluğu run1.bat ilə paylaşırsa run1.bat dəyişdirin

% 0, hazırda işləyən partiyaya və dəyişdiriciyə aiddir

dp sürücünü və yolu qaytarır (arxa arxa əyilmə ilə).

Sualınızın cavabı Stack Overflow-a bənzər bir sualdan əldə edilə bilər.

Burada göstərilən dəyişənləri istifadə edərək, aşağıdakı satırla app1.exe-yə zəng etmək üçün run1.bat-ı güncəlləyə bilərsiniz:%

dp0 dəyişəninə arxa cizgi daxildir.) Bu, toplu iş sənədinin cari toplu sənədin yerləşdiyi yerdən çalıştırılmasını tələb edəcəkdir.


Bəli, düşündüyündən daha asan. Təsdiqlə / rədd et görünüşündən elementləri yoxlamaq imkanı silindi. Bununla birlikdə, bütün maddələr görünüşündən (və ya filtrləməyinizə kömək edəcək xüsusi görünüşlər) təsdiq etmək istədiyiniz elementləri yoxlayın, sonra Məhsullar lentində, sağ tərəfdə Təsdiq et / Reddetmə (ikon bir sənəd səhifəsidir yoxlayın və üzərinə bir x). Birdən çox element seçildiyi təqdirdə təsdiqlənmiş status seçiləcək. Eyni, sənədlər kitabxanası üçün də tətbiq olunur, yalnız Maddələr lenti Dosyalar lentidir.

Toplu tapşırıq təsdiqləmə / rədd düyməsini vizual studiya ferması həlli ilə həyata keçirtdim, ümid edirəm ki, bu kiməsə kömək edə bilər (məzmun təsdiqləmə vəziyyəti iş axını ilə dəyişdirilə bilər, baxmayaraq ki)

VS təsərrüfat həllini yaradın, element əlavə edin və Element.xml daxil edin:

Bir aspx səhifəsi əlavə edin, bəzi düymələri əlavə edin (təsdiq et, rədd et və s.), Sonra təsdiqləmə əməliyyatında:

Http: // ziyarət edin. /_layouts/sitemanager.aspx sayt menecerinə daxil olmaq, maraqlanan sənədləri seçmək və yuxarı naviqasiya panelindəki "Əməliyyatlar" maddəsini istifadə etmək.

(Sharepoint Server 2013-də. Digər versiyalarla eyni olub olmadığını bilmirəm).

MS Developer Bloglarında Məşhur SharePoint URL və amp yerləri yolu ilə tapılmışdır.

Buna davam etməyə və bunu necə etdiyimi unutmağa davam edirəm. Sadəcə xatırladım-İnşallah bu kiməsə kömək edir (bəlkə də unutub yenidən axtardığım üçün gələcək).

Sadəcə siyahıya "Batch Approve Trigger" (və ya istədiyiniz hər şeyi) adlı bir sahə əlavə etdim və ona "1" dəyərini verdim. Layihədən təsdiqləmə vəziyyətini yeniləmək üçün iş axarımı yaratdım -> Gözləyən -> təsdiqləndi. Bir iş dəyişdirildikdə istənilən vaxt işləmək üçün iş axını qurun. Bütün "Toplu Təsdiqləmə Tetikleyicileri" "2" olaraq dəyişdirildi (siyahı məlumat səhifəsi görünüşündə yapışdırıb sürükləyin). Viola - iş axını dəyişdirilmiş bütün maddələrdə işləyir və vəziyyəti təsdiqlənmiş vəziyyətə gətirir.


@ Splattne cavabına əlavə olaraq, erkən dönməyiniz lazım olduqda CALL ed toplu sənədindəki exit / b istifadə edin.

Başqa bir seçim (3.3 :-) versiyasından əvvəl DOS ilə uyğunluq üçün) əmr prosesini uşaq (/ c) seçimi və işlənəcək digər toplu sənədin adı ilə çağırmaqdır. Bu da bir zəncir əvəzinə bir çağırış edəcək və hətta həqiqətən qədim dəzgahlarda işləyəcəkdir (sadəcə kimsə buna rast gəlsə və maraqlansaydı). :-)

Burda etməyə çalışdığım şey bu iki toplu fayla ardıcıllıqla zəng etməkdir.

Əslində uşaq ssenarisində uğursuz olur, çünki idarəetmə əsas ssenariyə qayıtmır

Sanket, toplu faylı birbaşa çağırmayın. "ÇAĞIR" əmrindən istifadə edin. Görmək splattnemisal.


"Kabuğunuz" və ya komanda xətti interfeysinə bash deyilir. Bir toplu fayla bənzər bir baş skriptini yaza bilərsiniz. Baş ssenarisi She-bang #! / Bin / bash ilə başlayır və onları işə salmaq üçün ardıcıllıqla yerinə yetiriləcək bir sıra əmrlərdən başqa bir şey deyil. Siz bash əmri ilə məhdudlaşmırsınız, ikili və ya skriptin tam yolunu istifadə edərək sistemdəki hər hansı bir ikili zəng edə bilərsiniz.

Öyrənmə / kitablar / terminal / bash / Linux və s. Linux Command Line Learning Resources - cortman https://help.ubuntu.com/community/CommandLineResources

İlk bash terminalda dəfələrlə işlədiyim bir neçə əmr idi. Buna görə tarix əmri ilə tarixi sadaladım və mətn sənədinə köçürdüm. Birinci sətir bu olmalıdır (əvvəl boşluq və birinci sətir):

Və qənaət etdikdən sonra onu icra edilə bilər.

Ssenarilərinizi bir yerə qoymağın yaxşı bir fikir olduğuna görə bir yol tələb etmədən çalıştırabilirsiniz. Evinizdə zibil qutusu yaradırsınızsa (mkdir.)

/ bin) növbəti dəfə daxil olduqda avtomatik olaraq PATH-a daxil olacaq.

Düzenle: Ssenarinin bütün istifadəçilər tərəfindən istifadəsinə verilməsini istəyirsinizsə, / usr / local / bin-ə yerləşdirin və başqaları tərəfindən rx girişi ilə root-a məxsus olun: sudo chown root: root / usr / local / bin / your_script sudo chmod 655 / usr / local / bin / your_script


Toplu işdəki qovluqlar və fayllar vasitəsilə təkrarlanmaq?

Budur mənim vəziyyətim. Bir layihə bəzi qoşmaları başqa bir sistemə köçürmək məqsədi daşıyır.

Bu əlavələr bir ana qovluğa yerləşdiriləcək, deyək ki, "Qovluq 0" (daha yaxşı başa düşmək üçün bu sualın sxeminə baxın) və onlar sıxılacaq / sıxılacaq.

Partiya skriptimin belə adlandırılmasını istəyirəm:

Komanda xətti çıxarış vasitəsi kimi 7za.exe istifadə edirəm.

Toplu iş sənədimin etməsini istədiyim şey "Qovluq 0" ın alt qovluqlarını təkrarlamaq və içərisindəki bütün ZIP sənədlərini öz qovluqlarına çıxarmaqdır.

Çıxarılan sənədlərin müvafiq ZIP sənədləri ilə eyni qovluqda olması məcburidir. Beləliklə, "Dosya 1.zip" içərisindəki sənədlər "Qovluq 1" və s.

Sənəd çıxarmaq üçün 7za.exe e% zippedFile çağırmadan əvvəl faktiki qovluğu da dəyişdirməyim lazım olduğunu düşünürəm, ancaq bu toplu sənəddə necə olduğunu (komanda xəttində necə olduğunu bilirəm və bilsəm də eyni təlimat "cd").

Aşağıda verilən cavablar hər ikisi ehtiyac duyduğum şeyə yaxındır. Ancaq bəzi bilinməyən səbəblərdən, bəzən bir parametr verdiyim zaman toplu iş dosyası heç bir şey etməyəcək və məni istəməyə qaytaracaq.

Təxminən 15 ildir ki, bir toplu sənəd yazmıram, buna görə arxadakı məntiqi və s. Tamamilə unutmuşam.

Hər hansı bir sertifikat olmadan, toplu fayl skriptinin boşluq xarakterli qovluq adlarını idarə edə bilməyəcəyi görünür. Zəhmət olmasa biriniz bunu təsdiq edib həll təklif edə bilərsinizmi?

Mən burada tamamilə kor olacağam. Yardım üçün təşəkkür edirik! =)

Bunun istifadə ediləcəyi qovluq quruluşunu bilmədiyim üçün həllin tam rekursiv olması lazımdır. Daha əvvəl qeyd etmədiyim üçün üzr istəyirəm.

Bütün cavablarınızdan və digər cavablardan aşağıdakıları düşünmək üçün ilham aldım (98% -də işləyir):

Aldığım yeganə problem, zipfile daxil etmək üçün File5 alt qovluğunu yaratmaq, nümunəmlə yaratmaq istəməsidir. Həqiqi File5.zip faylını çıxararkən bu problem deyil. Dizin quruluşunu alt qovluqlara daha dərin qazdıqda, son File5 fayl adını aldığından, File1.zip faylını çıxarmaq üçün File5 alt qovluğu 1 Folder A-ya yaratmaq istəyir. Budur bir quruluş nümunəsi:

Beləliklə, yuxarıda göstərilən quruluşu nəzərə alaraq, bunun əvəzinə File1 yaratmaq niyyətində olduğu zaman A qovluğunda File5 yaratmaq istəyir.

Dəstəyiniz və köməyiniz üçün təşəkkür edirik! =)

Hər kəsin köməyi minnətdarlıqla qiymətləndirilir.

@Dennis Williamson'un cavabını qəbul etdim, çünki onun həlli ilk növbədə soruşduğumu yerinə yetirdi. Əks təqdirdə, kimsə tamamilə rekursiv bir həll axtarırsa, xahiş edirəm öz cavabımda göstərilən linki izləyin, bu sizi StackOverflow veb saytına gətirəcəkdir.


Bunu digər şəkil sənədləri üçün toplamaq istəyirsinizsə, aşağıdakıları istifadə edərək exif məlumatlarını silmək üçün imagemagick istifadə edə bilərsiniz.

bKGD, cHRM, EXIF, gAMA, iCCP, iTXt, sRGB, tEXt, zCCP, zTXt, tarix: istənilən profillərin, şərhlərin və ya bu PNG parçalarının şəklini soyun.

Şəkilləriniz veb və ya rəqəmsal istifadə üçündürsə (RGB 72dpi nəzərdə tuturam) "Metadata: None" seçimi ilə Photoshop'u "veb üçün saxla" istifadə edə bilərsiniz. Heç bir məlumat əlavə etmədən sadə bir görüntü çıxaracaq (bu ölçünü optimallaşdırmaq üçündür).

Bir toplu hala gətirə və bu şəkildə avtomatik olaraq minlərlə görüntü saxlaya bilərsiniz.

CMYK 300 dpi və ya başqa bir şeylə yenidən saxlamaq üçün ikinci bir toplu yaratmadığınız təqdirdə CMYK və ya müəyyən bir ölçüdən daha böyük şəkillərə ehtiyacınız varsa ("veb üçün saxla" 5000x5000 pikselə qədər olan şəkillər üçün işləyəcəkdir) bu işləməyəcəkdir. ehtiyacınız var. Ancaq tövsiyə edilmir.


1 Cavab 1

Çözüm tapdığım üçün öz sualımı cavablandırıram.

Skriptdən ssenaridən istifadə etmək təklifinə (sualın şərhində) əsasən, hər təbəqəni raster görüntü kimi ixrac etməyə kömək edən bir ssenari tapdım. "Batch Export Unlocked Layers" adlanan ssenari John Wundes tərəfindən yazılmışdır. Ssenari yüzlərlə sətirdir və burada yazmaq üçün çox uzundur, ancaq buraya yükləməyə keçid verəcəyəm (gələcək sayt çürüməsi halında əsas sayt www.wundes.com).

  • Ssenarini yükləyin və qeyd edin.
  • Illustrator'dan açın: Fayl> Scripts> Other Script> file find and Open.
  • Ssenaridən yaradılan bir informasiya qutusu, ölçüsünü, fayl formatını və təyinat qovluğunu, həmçinin təbəqə adını əsas götürərək fayl adını təyin etməyə imkan verən bir informasiya qutusu açılacaqdır. Bütün açılmış və görünən təbəqələr ixrac ediləcək.
  • Başlat düyməsini vurun.

Illustrator CS4-də sınaqdan keçirdim və bir dəqiqədən az müddətdə 300 təbəqə ixrac etdi.