Jak szybko wysunąć wszystkie partycje zewnętrzne?


16

Mam dysk zewnętrzny z dwiema partycjami, które ciągle podłączam do komputera MacBook Pro, gdy siedzę przy biurku. (Jeden jest dla Time Machine, drugi tylko dla dodatkowej przestrzeni dyskowej.) Czasami muszę szybko złapać laptopa i zabrać go gdzieś, ale muszę zmienić miejsce, w którym mogę zobaczyć partycje na pulpicie, je lasso, dwa - kliknij palcem i wybierz Eject. Czy pod Mavericks jest szybszy sposób, czy też muszę skonfigurować AppleScript taki jak ten ze skrótem klawiaturowym?

Uwaga: nie chcę ich wysuwać tylko wtedy, gdy uśpię komputer Mac (tak jak tutaj omówiono ). Czasami jestem na teleconie z udostępnianiem ekranu i muszę oderwać komputer Mac od biurka, jeśli wiesz, co mam na myśli :-).


Używam Alfred.app do wykonania tego zadania. Ułatwia to naciskanie <kbd>cmd</kbd>+<kbd>space</kbd>i pisanie eject. Gorąco polecam
wrossmck

Wiele dobrych odpowiedzi poniżej. Trudno mi wybrać jedną z najlepszych.
Jim L.,

To miejsce nie jest wystarczająco duże dla dwóch z nas, @ JimL. Chyba będę musiał iść. (Przepraszam, wiem, że mój komentarz jest nieistotny, ale zobaczyłem jego nazwisko w innym poście i pomyślałem: „Nie napisałem tego!” Naprawdę zrobiłem to podwójnie.
JimLohse

Odpowiedzi:


7

W systemie OS-X Mountain-Lion mogę kliknąć opcję jednej z ikon „Wysuń” (przytrzymaj przycisk, a następnie kliknij ikonę wysuwania), a wszystkie partycje zewnętrzne zostaną wysunięte.

(Aktualizacja) Zostało to zweryfikowane, aby działało również na OS X Mavericks, a nawet na macOS Sierra, tak jak podejrzewałem. Prawdopodobnie można założyć, że działa on na co najmniej wszystkich wersjach pomiędzy nimi (wypróbuj!).


To wciąż działa pod Mavericks.
Jim L.,

To dla mnie najbardziej satysfakcjonująca odpowiedź. Jeden akord szybkiego klucza i gotowe. Nie wymaga dodatkowego oprogramowania. Dzięki!
Jim L.,

2
Wygląda na to, że już nie działa na El Capitan. Czy ktoś może potwierdzić?
Matteo

@Matteo nadal działa dla mnie!
Jim L.

11

Jedynym zastrzeżeniem do „szybkiego wysuwania” dysków z dowolną niezawodnością jest to, że nie zostaną one wysunięte, jeśli będą w nich używane pliki. To powiedziawszy, możesz wymusić wysuwanie dysków, ale nie byłoby to idealne, jeśli pliki są faktycznie używane.

Najłatwiejszym sposobem na natychmiastowe wysunięcie wszystkich dysków jest wywołanie Applescript (może również utworzyć skrypt powłoki, ale Applescript można łatwiej przekształcić w rozwiązanie aplikacji jednym kliknięciem).

Więc przejdź do edytora Applescript, wklej w następujący sposób:

tell application "Finder" to eject (every disk whose ejectable is true and local volume is true and free space is not equal to 0)

Wpisz kod w edytorze skryptów

i zapisz skrypt jako aplikację, gdziekolwiek wybierzesz (NIE używaj /tmpfolderu, jak pokazano) . Dodaj wynikową aplikację do Docka, a uzyskasz Szybkie wysuwanie jednym kliknięciem.

Wybierz „Aplikacja” jako format pliku

Uwaga: ta and free space is not equal to 0część jest taka, że ​​skrypt nie wysuwa zawartości napędu CD / DVD. Usuń to, jeśli chcesz, aby wysunięto także wszystkie włożone dyski.


Zawarłem to w skrypcie Ruby w mojej odpowiedzi tutaj ... coś w rodzaju tego samego od nowa ...
Dan Rosenstark

Umieściłem ten Applescript do uruchomienia w usłudze, a następnie utworzyłem skrót klawiaturowy w Preferencjach systemowych i działa idealnie.
lipiec

To moja ulubiona odpowiedź, ponieważ wykorzystuje natywne funkcje MacOS. Nie rozwiązuje to jednak potrzeby szybkiego fizycznego odłączania dysków zewnętrznych. „Muszę na chwilę zabrać komputer Mac z biurka”. Tak więc, jeśli skrypt wysuwa tylko dyski wysuwne, a niektóre nie były wówczas wysuwane - byłoby świetnie, gdybyśmy zostali ostrzeżeni przed odłączeniem kabla i udaniem się do innego pokoju!
tishma

8

Poleciłbym Alfreda . Jest to aplikacja do szybkiego uruchamiania, która zawiera funkcję wysuwania woluminów. Możesz wybrać, jakie cele kwalifikują się do polecenia (dysk sieciowy, lokalny itp.).

polecenie wysuwania alfred

Po uruchomieniu skrótu możesz wybrać konkretny wolumin do odmontowania. Lub możesz wpisać ejectall (tę nazwę skrótu można dostosować).


1
Uwaga: musisz włączyć te wbudowane polecenia Alfred, przechodząc do Preferencje Alfred -> System -> Wysuń i Preferencje -> System -> „ Wyrzuć
cody.codes

3

Używam paska uruchamiania do automatyzacji tego zadania. Ma skrót poleceń do wysuwania wszystkich woluminów wysuwnych. Jest niesamowicie szybki, a jeśli wyłączysz większość reguł indeksowania, wielkość pamięci i użycie procesora mogą być niewielkie.

Jest znacznie potężniejszy od tej jednej sztuczki, ale wykonuje tę sztuczkę bardzo dobrze i prawdopodobnie byłoby dobrze, korzystając z darmowej wersji do tego celu, ponieważ używałbyś tylko tego jednego skrótu.




1

Osobiście używam Alfreda, jak sugerowano w innej odpowiedzi. Ale oto odpowiedź Applescript , owinięta pismem Ruby.

#!/usr/bin/env ruby
#eject-all shell script

# Dan Rosenstark 2015-11-12 15:28
# http://porkrind.org/missives/calling-applescript-from-ruby/
def osascript(script)
  system 'osascript', *script.split(/\n/).map { |line| ['-e', line] }.flatten
end

if __FILE__ == $0
  appleScript = "tell application \"Finder\" to eject (every disk whose ejectable is true and local volume is true and free space is not equal to 0)";
  osascript appleScript
  puts "I probably ejected all the disks."
end

będziesz musiał umieścić go na swojej ścieżce i sprawić, by był wykonywalny.


0

Można to zrobić elegancko za pomocą aplikacji automatyzującej i za pomocą funkcji wyświetlania powiadomień na wydruku. Po prostu zapisz następujące aplikacje i uruchom je w dowolny sposób.

wprowadź opis zdjęcia tutaj


0

Używam kombinacji AppleScript i aplikacji o nazwie Spark . Spark jest na Github dla Homebrew Casks.

brew install Caskroom/cask/spark

Następnie używam AppleScript do wysuwania dysków i wiązania ich ze skrótem ⌘ E.

wprowadź opis zdjęcia tutaj


0

W przypadku dysków z partycjami, poniższy Applescript działa najlepiej.

tell application "System Events"
  key down option
  tell application "Finder"
    with timeout of 15 seconds -- make sure we stop
      eject (every disk whose ejectable is true)
    end timeout
  end tell
  key up option
end tell

-2

W systemie macOS Mojave możesz po prostu wybrać oba dyski, które chcesz wysunąć, i kliknąć „CMD + E”. Spowoduje to wysunięcie obu dysków bez monitów.


1
Właśnie tego pierwotne pytanie chciało uniknąć!
Jim L.
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.