Knowledge-based trouble-shooting systems for fault diagnosis in a variety of situations are discussed. The basic principles of these expert systems are briefly outlined. Two existing systems are examined: General Electric (GE) Corporation's CATS (computer-aided trouble-shooting system), designed to improve the maintenance of diesel locomotives; and Westinghouse Electric Company's rule-based system for diagnosing steam turbine generators. GE's system codified the expertise of a GE troubleshooter employee with decades of experience. A 500-rule prototype implemented in the Forth language on a PDP-11 minicomputer was put into trial use in mod-1983. Westinghouse's system uses more than 8600 rules to analyze instrument readings, and determines whether generators are being operated correctly or whether they should be brought offline to repair problems. The use of expert-system shells to write rule-based software is described. The limitations of rule-based systems for trouble shooting are considered, and issues concerning their use are examined.