36:
211:
Fish commands are all defined, shell equivalents may vary. Fish commands always have priority: the server is expected to execute a fish command if it understands it. If it does not, however, it can try to execute a shell command. When there is no special server program, Unix shell ignores the fish
447:
53:
491:
100:
72:
245:
as the command executed on remote machine. This should make it possible for the server to distinguish FISH connections from normal RSH or SSH.
79:
327:
TRAMP some time ago, but support was removed (although TRAMP still can use shell connections in a similar way using tramp-sh.el script file)
86:
119:
68:
57:
389:"Feature: Consider porting FISH(FIle transfer over SHell filesystem) from Midnight Commander · Issue #1819 · elfmz/Far2l"
342:
93:
46:
318:
233:. The codes 000 and 001 are special, their meaning depends on presence of server output before the end line.
376:
361:
311:
476:
459:
140:
190:) on the server, which executes FISH commands instead of Unix shell and thus speeds up operations.
158:
The advantage of FISH is that all it requires on the server-side is an SSH or RSH implementation,
280:
194:
428:
408:
193:
The protocol was designed by Czech Linux Kernel Hacker, Pavel Machek, in 1998 for the
485:
152:
186:
on the server side). Optionally, there can be a special FISH server program (called
148:
144:
271:
which indicates supported version of the FISH protocol and supported extensions.
285:
179:
35:
208:#FISH_COMMAND arguments... equivalent shell commands, which may be multi-line
171:
159:
388:
17:
303:
175:
307:
262:#VER 0.0.2 <feature1> <feature2> <...> echo '### 000'
377:
https://github.com/MidnightCommander/mc/blob/master/src/vfs/fish/fish.c
433:
413:
393:
178:—unlike other methods of remote access to files via a remote shell,
212:
command as a comment and executes the equivalent shell command(s).
337:
324:
229:
is the return code. Return codes are a superset to those used in
290:
163:
299:
296:
230:
29:
167:
256:
to negotiate FISH protocol, its version and extensions.
265:
The server may reply to VER command with a lines like
429:"Kio-extras/Fish/Fish.CPP at master · KDE/Kio-extras"
215:Server replies are multi-line, but always end with
60:. Unsourced material may be challenged and removed.
205:Client sends text requests of the following form:
241:The client initiates SSH or RSH connection with
268:VER 0.0.0 <feature2> <...> ### 200
259:#FISH echo; start_fish_server; echo '### 200'
248:The first two commands sent to the server are
8:
366:- via Midnight Commander Official Repository
155:between computers and manage remote files.
409:"LFTP/SRC/Fish.cc at master · lavv17/LFTP"
120:Learn how and when to remove this message
354:
69:"Files transferred over shell protocol"
133:Files transferred over Shell protocol
7:
58:adding citations to reliable sources
477:README.fish from Midnight Commander
25:
34:
492:Network file transfer protocols
225:is a prefix to mark this line,
45:needs additional citations for
1:
218:### xyz<optional text>
182:for example, which requires
508:
343:SSH File Transfer Protocol
460:"Re: Tramp's fish method"
323:FISH was implemented in
162:, and a set of standard
448:related commit in Emacs
54:improve this article
281:Midnight Commander
243:echo FISH:;/bin/sh
237:Session initiation
195:Midnight Commander
201:Protocol messages
188:start_fish_server
130:
129:
122:
104:
27:Computer protocol
16:(Redirected from
499:
464:
463:
456:
450:
445:
439:
438:
425:
419:
418:
405:
399:
398:
385:
379:
374:
368:
359:
255:
251:
244:
228:
224:
166:utilities (like
125:
118:
114:
111:
105:
103:
62:
38:
30:
21:
507:
506:
502:
501:
500:
498:
497:
496:
482:
481:
473:
468:
467:
458:
457:
453:
446:
442:
427:
426:
422:
407:
406:
402:
387:
386:
382:
375:
371:
360:
356:
351:
334:
277:
275:Implementations
269:
263:
260:
253:
249:
242:
239:
226:
222:
219:
209:
203:
197:software tool.
139:) is a network
126:
115:
109:
106:
63:
61:
51:
39:
28:
23:
22:
15:
12:
11:
5:
505:
503:
495:
494:
484:
483:
480:
479:
472:
471:External links
469:
466:
465:
451:
440:
420:
400:
380:
369:
353:
352:
350:
347:
346:
345:
340:
333:
330:
329:
328:
321:
315:
293:
288:
283:
276:
273:
267:
261:
258:
238:
235:
217:
207:
202:
199:
153:transfer files
128:
127:
42:
40:
33:
26:
24:
14:
13:
10:
9:
6:
4:
3:
2:
504:
493:
490:
489:
487:
478:
475:
474:
470:
461:
455:
452:
449:
444:
441:
436:
435:
430:
424:
421:
416:
415:
410:
404:
401:
396:
395:
390:
384:
381:
378:
373:
370:
367:
365:
358:
355:
348:
344:
341:
339:
336:
335:
331:
326:
322:
320:
316:
313:
309:
305:
301:
298:
294:
292:
289:
287:
284:
282:
279:
278:
274:
272:
266:
257:
246:
236:
234:
232:
216:
213:
206:
200:
198:
196:
191:
189:
185:
181:
177:
173:
169:
165:
161:
156:
154:
150:
146:
142:
138:
134:
124:
121:
113:
110:December 2009
102:
99:
95:
92:
88:
85:
81:
78:
74:
71: –
70:
66:
65:Find sources:
59:
55:
49:
48:
43:This article
41:
37:
32:
31:
19:
18:FISH protocol
454:
443:
432:
423:
412:
403:
392:
383:
372:
363:
357:
270:
264:
247:
240:
220:
214:
210:
204:
192:
187:
183:
157:
149:Remote Shell
145:Secure Shell
136:
132:
131:
116:
107:
97:
90:
83:
76:
64:
52:Please help
47:verification
44:
349:References
160:Unix shell
143:that uses
80:newspapers
304:konqueror
151:(RSH) to
147:(SSH) or
486:Category
332:See also
317:fish as
308:Krusader
300:kioslave
295:fish://
141:protocol
319:tcl-vfs
312:Dolphin
94:scholar
434:GitHub
414:GitHub
394:GitHub
364:Fish.c
362:File:
302:(with
221:line.
96:
89:
82:
75:
67:
338:SSHFS
325:Emacs
286:far2l
101:JSTOR
87:books
291:Lftp
252:and
250:FISH
164:Unix
137:FISH
73:news
310:or
297:KDE
254:VER
231:FTP
227:xyz
223:###
184:scp
180:scp
174:or
172:cat
56:by
488::
431:.
411:.
391:.
306:,
176:dd
170:,
168:ls
462:.
437:.
417:.
397:.
314:)
135:(
123:)
117:(
112:)
108:(
98:·
91:·
84:·
77:·
50:.
20:)
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.